在SilverStripe/PHP中,要设置表单在提交时重定向到当前页面,可以按照以下步骤进行操作:
Form
类或者FormAction
类。例如,创建一个名为MyForm
的表单类:use SilverStripe\Forms\Form;
use SilverStripe\Forms\FieldList;
use SilverStripe\Forms\TextField;
use SilverStripe\Forms\FormAction;
class MyForm extends Form
{
public function __construct($controller, $name)
{
$fields = FieldList::create(
TextField::create('Name', 'Name')
);
$actions = FieldList::create(
FormAction::create('doSubmit', 'Submit')
);
parent::__construct($controller, $name, $fields, $actions);
}
public function doSubmit($data, $form)
{
// 处理表单提交逻辑
// 重定向到当前页面
return $this->controller->redirectBack();
}
}
index
方法中:use SilverStripe\Control\Controller;
use SilverStripe\View\Requirements;
class MyPageController extends Controller
{
public function index()
{
Requirements::javascript('path/to/jquery.js');
Requirements::javascript('path/to/jquery-validate.js');
$form = MyForm::create($this, 'MyForm');
return $this->customise(array('MyForm' => $form))->renderWith(array('MyPage', 'Page'));
}
}
$MyForm
变量来渲染表单。例如,在MyPage.ss
模板中:<form $MyForm>
$MyForm
</form>
这样,当用户提交表单时,会执行doSubmit
方法处理表单提交逻辑,并通过$this->controller->redirectBack()
方法重定向回当前页面。
SilverStripe/PHP是一个开源的PHP框架,用于快速开发可扩展的网站和Web应用程序。它提供了一套强大的工具和功能,使开发人员能够轻松构建功能丰富的应用程序。SilverStripe/PHP具有良好的可扩展性和灵活性,适用于各种规模的项目。
推荐的腾讯云相关产品和产品介绍链接地址:
以上是一些腾讯云的产品,可以根据具体需求选择适合的产品来支持和扩展您的云计算应用。
领取专属 10元无门槛券
手把手带您无忧上云