我得到了一个奇怪的行为。
在Codeigniter的视图中,我有以下代码:
<?php echo form_multiselect('post-categories', $active_categories, (!empty($selected_categories))?$selected_categories:null,array('class'=>'form-control')); ?>
生成以下 HTML
<select name="post-categories" class="form-control" multiple="multiple">
<option value="1">Beauty</option>
<option value="4">More</option>
<option value="3">New</option>
</select>
但是,当我提交选择了多个类别的表单时,我只收到字符串。
在控制器中
var_dump($this->input->post('post-categories'));
将输出
string(1) "3"
我做错了什么或遗漏了什么吗?
name
应该是post-categories[]
(数组语法)。尝试-
form_multiselect('post-categories[]', $active_categories, (!empty($selected_categories))?$selected_categories:null,array('class'=>'form-control'));