Laravel复选框未提交给控制器 [英] Laravel checkbox is not submitted to controller
问题描述
我在这样的视图中有一个简单的表单:
I have a simple form in a view like this:
<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());
用于检查从视图发布到控制器的所有值.结果如下所示,我想知道如何通过表单发布复选框值.
for checking all of values posted to controller from view. the result is like below and I want to know how to post checkbox value with form.
数组:4 [▼
array:4 [▼
标题" =>"
类型" =>"
后缀" =>"
"_ token" =>"kSM3pO11KOOWQcCx4PeWcbi4r4AsFx0rSGQoVFtG"
"_token" => "kSM3pO11KOOWQcCx4PeWcbi4r4AsFx0rSGQoVFtG"
]
推荐答案
如果用户或客户端脚本未选中复选框输入,则不会将其提交到服务器端脚本.因此,在这种情况下,输入不会发送到您的控制器
A checkbox input is not submitted to the server side script if not checked by the user or by a client side script. So, in these cases, the input isn't sent to your controller
在laravel中,如果您想以某种方式规范化"未发送输入的情况,则可以自己创建一个字段:
In laravel, if you want to 'normalize' somehow the situation when the input isn't sent, you can create a field by yourself:
$data = Input::all();
if ( ! isset($data['check']) )
$data['check'] = false;
这篇关于Laravel复选框未提交给控制器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!