form_*()

函数前缀为form_ 执行处理表单时有用的任务。助手直接映射到Form PHP 类及其方法。例如:

{{ form_close() }}

是以下等价的 PHP:

<?= Form::close() ?>

NOTE: 中的方法camelCase 应转换为snake_case.

form_open()

输出一个标准<form> 打开标签以及_session_key_token 用于 CSRF 保护的隐藏字段。如果您正在使用AJAX 架构,建议您使用form_ajax() 反而。

{{ form_open() }}

可以在第一个参数中传递属性。

{{ form_open({ class: 'form-horizontal' }) }}

上面的示例将输出如下:

<form class="form-horizontal">

有一些特殊选项也可以与属性一起使用。

{{ form_open({ request: 'onUpdate' }) }}

该函数支持以下选项:

Option Description
method 请求方法。对应于method FORM 标记属性。例如:POST,GET,PUT,DELETE
request 提交表单时在服务器上执行的处理程序名称。见处理表格 有关事件处理程序的详细信息的文章。
url 指定要将表单发布到的 URL。对应于action FORM 标记属性。
files 确定表单是否将提交文件。接受的值:truefalse.
model 表单模型绑定的模型对象。

form_ajax()

输出启用 AJAX 的 FORM 开始标记。的第一个参数form_ajax() function 是 AJAX 处理程序名称。处理程序可以在布局或页面中定义PHP 部分 代码,也可以定义在组件中。您可以在以下位置找到有关 AJAX 的更多信息AJAX 架构 文章。

{{ form_ajax('onUpdate') }}

可以在第二个参数中传递属性。

{{ form_ajax('onSave', { class: 'form-horizontal'}) }}

上面的示例将输出如下:

<form data-request="onSave" class="form-horizontal">

有一些特殊选项也可以与属性一起使用。

{{ form_ajax('onDelete', { data: { id: 2 }, confirm: 'Really delete this record?' }) }}

{{ form_ajax('onRefresh', { update: { statistics: '#statsPanel' } }) }}

NOTE: 尝试引用组件的别名时__SELF__ 作为论据form_ajax() 您必须首先构建您希望在调用本身之外使用的字符串。例子:

{% set targetPartial = "'" ~ __SELF__ ~ "::statistics': '#statsPanel'" %}
{{ form_ajax('onUpdate', { update: targetPartial }) }}

该函数支持以下选项:

Option Description
success 在成功结果时执行的 JavaScript 字符串。
error 在失败结果上执行的 JavaScript 字符串。
confirm 在发送请求之前显示的确认消息。
redirect 成功后,重定向到 URL。
update 以下列格式在成功时更新的部分数组:{ 'partial': '#element' }.
data 以下列格式包含在请求中的额外数据:{ 'myvar': 'myvalue' }.

form_close()

输出标准的 FORM 结束标记。此标记通常可用以提供使用的一致性。

{{ form_close() }}

上面的示例将输出如下:

</form>

将属性传递给生成的元素

您可以将其他属性传递给Form::open() 通过传递要在最终生成的对象上呈现的属性名称和值的数组的方法<form> 元素。

<?= Form::open(array('id' => 'example', 'class' => 'something')) ?>
    // ..
<?= Form::close() ?>

上面的示例将输出以下内容:

<form method="POST" action="" accept-charset="UTF-8" id="example" class="something">

</form>
豫ICP备18041297号-2