Laravel 4,如何测试是否选中了复选框?

2022-08-31 00:24:03

我正在尝试查看我的控制器中是否选中了复选框。我已经读到这是这样做的代码

if (Input::get('attending_lan', true))

但即使未选中该复选框,也会返回 true。


答案 1

Input::has('attending_lan')

一般来说,如果选中该复选框,则请求变量将存在。如果不是这种情况,则代码中的其他位置存在问题。

同样相关:<输入类型=“复选框”/>是否仅在选中时才发布数据?


答案 2

假设您的视图中有此表单代码:

// view.blade.php
{{ Form::open() }}
    {{ Form::checkbox('attending_lan', 'yes') }}
    {{ Form::submit('Send') }}
{{ Form::close() }}

您可以按如下方式获取复选框的值:

if (Input::get('attending_lan') === 'yes') {
    // checked
} else {
    // unchecked
}

这里的关键是,在视图中创建复选框时必须设置一个值(在示例中,值将为 ),然后在控制器中检查该值。yes


推荐