我在这样的视图中有一个简单的表单:
<form action="{{ URL::route('admin.x') }}" method="POST">
<input type="text" value="b" name="title" />
<input type="text" value="c" name="type" />
<input type="text" value="d" name="postfix" />
<input type="checkbox" name="check" value="ss" />
<input type="hidden" name="_token" value="{{ csrf_token() }}">
</form>
我用过
dd(Input::all());
用于检查从视图发布到控制器的所有值。结果如下所示,我想知道如何使用表单发布复选框值。
数组:4 [▼
&#34;标题&#34; =&GT; &#34;&#34;
&#34;类型&#34; =&GT; &#34;&#34;
&#34;后缀&#34; =&GT; &#34;&#34;
&#34; _token&#34; =&GT; &#34; kSM3pO11KOOWQcCx4PeWcbi4r4AsFx0rSGQoVFtG&#34;
答案 0 :(得分:1)
您可以通过创建隐藏的输入字段来确保服务器端收到复选框的值,无论是否已选中该复选框,方法是创建一个名称 复选框字段的隐藏输入字段。
这样,如果在没有选中复选框的情况下提交表单,服务器端将从隐藏的输入字段接收值,而如果选中该复选框,则服务器将收到检查的值,因为该字段在形式。
<input type="hidden" name="checkbox" value="0"/>
<input type="checkbox" name="checkbox" value="ss"/>
答案 1 :(得分:0)
如果未由用户或客户端脚本检查,则不会将复选框输入提交到服务器端脚本。因此,在这些情况下,输入不会发送到您的控制器
在laravel中,如果你想要正常化&#39;不知何故,当输入未被发送时,你可以自己创建一个字段:
$data = Input::all();
if ( ! isset($data['check'])
$data['check'] = false;
答案 2 :(得分:0)
如果选中该复选框,则返回true,否则返回false。
Input:has('check')