编辑和更新选项(codeigniter)时,如何在multiselect中显示选定值

编辑和更新选项(codeigniter)时,如何在multiselect中显示选定值,codeigniter,Codeigniter,编辑和更新选项时,如何在multiselect中显示选定值 我的多选功能是: foreach ($subjects as $sub){ $subject_selected[]=$sub['subject_name']; } echo form_multiselect('subject[]',$subject_list,'',$js,$subject_selected); ?> 如果我错了,请纠正我。应该是这样的 echo form_multiselect('subject[]'

编辑和更新选项时,如何在multiselect中显示选定值

我的多选功能是:

foreach ($subjects as $sub){

 $subject_selected[]=$sub['subject_name'];

}

echo  form_multiselect('subject[]',$subject_list,'',$js,$subject_selected); ?>
如果我错了,请纠正我。

应该是这样的

echo form_multiselect('subject[]',$subject_list,$subject_selected,$js); ?>
用于创建标准的多选字段。第一个参数将包含字段的名称,第二个参数将包含选项的关联数组,第三个参数将包含希望选择的一个或多个值。参数的用法与使用上面的form_dropdown()相同,当然,字段的名称需要使用POST数组语法,例如foo[]


我一直在寻找这个东西,失败了很多次。但最终找到了解决问题的办法

这就是我遇到的方式

<?php
                $manpower_list = array();
                $manpowers = $this->db->select('m.id, m.manpower_name')
                                ->from('task_manpower tm')
                                ->join('manpower m', 'tm.manpower_id = m.id')
                                ->where('tm.deleted', 0)->where('m.deleted', 0)
                                ->where('tm.task_id', $model_info->id)
                                ->get()->result();
                foreach ($manpowers as $power) {
                    $manpower_list[] = $power->id;
                }
            ?>
        <?php echo form_dropdown("manpower_id[]", $manpower_dropdown, $manpower_list, "class='select2 validate-hidden form-control' id='manpower_id' multiple='multiple'"); ?>


它不起作用。。print_r($subject_selected)给出数组([0]=>accounts[1]=>history)我希望这两个主题在multiselect选项中保持选中状态。然后我认为如果您的选项“值”类似于accounts,您需要使用数组值($subject_selected),历史然后我不知道错误在哪里…直到我得到的范围和内容这是正确的…检查您的代码并检查选项值和$subject\u selected值
$subject\u selected
的值是否需要与
$subject\u列表中的键匹配。考虑到您的打印内容,您的
$subject\u列表
数组应该类似于
数组('accounts'=>'accounts','history'=>'history')
。。。