在Laravel中,我想显示一个带有复选框及其标签的表单。我是这样做的:
{{ Form::open(array('url'=>'fancyurl', 'method' => 'post')) }}
<p>Categories:</p>
<ul>
@foreach($categories as $c)
<li>
{{ Form::checkbox('categories[]', $c->id) }}
{{ Form::label('categories', $c->name) }}
</li>
@endforeach
</ul>
<p>
{{ Form::submit('Submit') }}
</p>
{{ Form::close() }}
它完美显示了复选框及其标签。但是当我点击标签时,标签的复选框仍未选中。 如何在Laravel中设置&#34; for&#34; -attribute?
答案 0 :(得分:1)
label
标记的for属性应该等于id 将相关元素绑定在一起的相关元素的属性。
http://www.w3schools.com/tags/tag_label.asp
您需要在复选框上指定id
属性:
{{
Form::checkbox(
'categories[]',
$c->id,
null,
['id' => 'category-' . $c->id]
)
}}
{{ Form::label('category-' . $c->id, $c->name) }}
来源:https://github.com/illuminate/html/blob/master/FormBuilder.php#L567