Laravel复选框未提交给控制器 [英] Laravel checkbox is not submitted to controller

查看:54
本文介绍了Laravel复选框未提交给控制器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在这样的视图中有一个简单的表单:

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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆