【发布时间】:2014-07-11 11:32:18
【问题描述】:
我有一个从用户那里收集一些信息的表单中的清单。我正在尝试获取用户选择的那些复选框的值。
这是路线
Route::get('addoption', array('as' => 'getaddoption', 'uses' => 'CategoryController@getAddOption'));
Route::post('addoption', array('as' => 'postaddoption', 'uses' => 'CategoryController@postAddOption'));
这是控制器部分
public function getCategoryForm(){
//$this->option is a model interface which deals with table named 'options' having one column 'option'
$existing_options = $this->option->lists('option');
return View::make('dashboard.addcategoryform')->with('existing_options', $existing_options);
}
这是处理复选框的表单部分(在dashboard.addcategory 视图中)
@foreach($existing_options as $existing_option)
{{Form::label($existing_option, $existing_option)}}
{{Form::checkbox($existing_option, $existing_option)}}
@endforeach
这样就创建了复选框。现在我想知道用户选择的复选框的值。
我正在通过 postAddOption 方法处理此表单
if($validator->passes()){
$existing_option = $this->option->lists('option');
foreach($existing_option as $existing_opt){
if(Input::get($existing_opt) == true){
$selected_option[] = $existing_opt;
}
}
print_r($selected_option);
}
但它给了我所有复选框的数组。
【问题讨论】: