如何在laravel 4中设置表单输入必需属性

Got*_*ses 15 php forms html5 requiredfieldvalidator laravel-4

我正在使用laravel框架进行项目,我正在实现一个基本的表单页面,我需要某些值required,这可以在HTML5中轻松完成.

<input type="text" name="abc" required>
Run Code Online (Sandbox Code Playgroud)

在laravel中,没有required属性,同样如下:

{{ Form::text('abc') }}
Run Code Online (Sandbox Code Playgroud)

如何在上述语句中包含必需属性?

Got*_*ses 20

由于简单的写作['required']不起作用,我在网上搜索了一下并找到答案,所以我想我会在这里分享.

第三个参数是一个可选属性数组,按照惯例,它必须写为:

{{ Form::text('abc','',array('required' => 'required')) }}
Run Code Online (Sandbox Code Playgroud)

同样,对于默认选中/选中的单选按钮,我们有:

{{ Form::radio('abc', 'yes', array('checked' => 'checked')) }}
Run Code Online (Sandbox Code Playgroud)

  • 为什么需要''required'=>'required'?只是`要求'不起作用? (2认同)
  • @JonRhoades如果你看看Laravel的HtmlBuilder类,特别是attributeElement方法,你会发现你错了.如果键是数字键,则键将设置为该值.所以['required']实际上与['required'=>'required']相同. (2认同)

thp*_*hpl 13

查看API-Docs.方法签名显示您可以提供3个参数.

第一个是name属性,第二个是value属性.第三个是具有任何其他属性的数组.

所以只需调用您的方法:

{{ Form::text('key', 'value', ['required']) }}
Run Code Online (Sandbox Code Playgroud)

并且required属性将附加到您的输入字段.


小智 6

我相信正确的答案类似于第三个参数的其他帖子

array('required' => 'required')
Run Code Online (Sandbox Code Playgroud)

但是要获取没有任何值的属性,您可以执行以下操作:

array('required' => '')
Run Code Online (Sandbox Code Playgroud)

然后,输入字段(用于文本示例)将查看问题中的必要内容.

Laravel示例:

{{ Form::text('title', '', array('tabindex' => '1', 'required' => '')) }}
Run Code Online (Sandbox Code Playgroud)

HTML输出:

<input tabindex="1" required name="title" type="text" value="" id="title">
Run Code Online (Sandbox Code Playgroud)

我相信这实际上是required =''的简写,只是想添加这个注释