将可选参数传递给 Laravel 表单
Pass optional parameters to Laravel Form
这是我的 partials/textfield.blade.php
片段的摘录:
{{ Form::text('mylabel', 'mytext', ['class' =>'form-control']) }}
我知道可以包含此代码段并将一些变量传递给它:
@INCLUDE('partials/textfield', ['required' => 'required', 'autofocus' => 'autofocus'])
我希望能够使用 可选 参数调用代码段 required
、autofocus
和 readonly
。
我现在的问题是:如何将这些变量传递给表单元素?
我试过了:
{{ Form::text('label',null,
[
'class' =>'form-control',
'required' => (isset($required) ? $required : 'false'),
'readonly' => (isset($readonly) ? $readonly : 'false'),
'autofocus' => (isset($autofocus) ? $autofocus : 'false')
])
}}
这导致 HTML 代码如 ... readonly="false"...
。但是,readonly
的存在会导致 Internet 浏览器将字段呈现为只读。
将 'false'
替换为 ''
也无济于事。有谁知道如何将这些可选参数传递给代码段?
非常感谢任何帮助!
{{ Form::text('label',null,
[
'class' =>'form-control',
'required' => (isset($required) ? 'true' : 'false'),
'readonly' => (isset($readonly) ? 'true' : 'false'),
'autofocus' => (isset($autofocus) ? 'true' : 'false')
])
}}
您可以将这些值设置为 true 或 false。
你会得到结果的。
另一种方式是
@INCLUDE('partials/textfield', [ 'options' => [ 'class' =>'form-control', 'required' => 'required', 'autofocus' => 'autofocus']]);
现在您可以简单地
{{ Form::text('label',null,
$options
)
}}
通过这种方式,您不必检查每个字段。
{!! Form::input('text', 'email', null, [$required ? 'required' : '', $readonly ? 'readonly' : '', $autofocus? 'autofocus' : '']) !!}
不得不稍微更改一下我的答案。我习惯了kris/laravel-form-builder。我试过了,应该可以。
这是我的 partials/textfield.blade.php
片段的摘录:
{{ Form::text('mylabel', 'mytext', ['class' =>'form-control']) }}
我知道可以包含此代码段并将一些变量传递给它:
@INCLUDE('partials/textfield', ['required' => 'required', 'autofocus' => 'autofocus'])
我希望能够使用 可选 参数调用代码段 required
、autofocus
和 readonly
。
我现在的问题是:如何将这些变量传递给表单元素?
我试过了:
{{ Form::text('label',null,
[
'class' =>'form-control',
'required' => (isset($required) ? $required : 'false'),
'readonly' => (isset($readonly) ? $readonly : 'false'),
'autofocus' => (isset($autofocus) ? $autofocus : 'false')
])
}}
这导致 HTML 代码如 ... readonly="false"...
。但是,readonly
的存在会导致 Internet 浏览器将字段呈现为只读。
将 'false'
替换为 ''
也无济于事。有谁知道如何将这些可选参数传递给代码段?
非常感谢任何帮助!
{{ Form::text('label',null,
[
'class' =>'form-control',
'required' => (isset($required) ? 'true' : 'false'),
'readonly' => (isset($readonly) ? 'true' : 'false'),
'autofocus' => (isset($autofocus) ? 'true' : 'false')
])
}}
您可以将这些值设置为 true 或 false。
你会得到结果的。
另一种方式是
@INCLUDE('partials/textfield', [ 'options' => [ 'class' =>'form-control', 'required' => 'required', 'autofocus' => 'autofocus']]);
现在您可以简单地
{{ Form::text('label',null,
$options
)
}}
通过这种方式,您不必检查每个字段。
{!! Form::input('text', 'email', null, [$required ? 'required' : '', $readonly ? 'readonly' : '', $autofocus? 'autofocus' : '']) !!}
不得不稍微更改一下我的答案。我习惯了kris/laravel-form-builder。我试过了,应该可以。