我想将多项选择设置为我的多列表框。
我的视图页面中有两个结果。
$inr1 = 0;
$arr1 = array();
$str_arr = '';
foreach ($result as $rows){
$inr1 = $rows['Employees']['employee_id'];
$arr1[$inr1] = $rows['Employees']['first_name'].' '.$rows['Employees']['last_name'];
$str_arr = $str_arr.$inr1.',';
}
$str_arr = substr($str_arr,0,-1);
//print_r($arr1);
$inr = 0;
$arr = array();
foreach ($options as $option){
$inr = $option['Employee']['employee_id'];
$arr[$inr] = $option['Employee']['first_name'].' '.$option['Employee']['last_name'];
}
//print_r($arr);
echo $this->Form->input('emp_id_one', array( 'options' => array( $arr),
'empty' => '(choose one)',
'div'=>'formfield',
'error' => array( 'wrap' => 'div',
'class' => 'formerror'
),
'label' => 'Team Members',
'type' => 'select', 'multiple' => true,
'selected' => $arr1,
'style' => 'width:210px; height:125px;',
));
但是$arr1
中的值未在列表框中选中。
$arr1
具有所选值。
$arr
可以选择列表。
问题在于选择不起作用。没有选择...
我该怎么做?
如果我的代码有任何问题..?
答案 0 :(得分:3)
最后,我通过追查一些代码解决了我的问题:
在此$str_arr = substr($str_arr,0,-1);
'之后添加一行代码。
那是......
$str_arr = substr($str_arr,0,-1);
$sel = explode(',',$str_arr);
然后更改变量名称,如下所示:
echo $this->Form->input('emp_id_one', array( 'options' => array( $arr),
'empty' => '(choose one)',
'div'=>'formfield',
'error' => array( 'wrap' => 'div',
'class' => 'formerror'
),
'label' => 'Team Members',
'type' => 'select', 'multiple' => true,
'selected' => $sel,
'style' => 'width:210px; height:125px;',
));
现在,在多列表
中选择了$sel
中的值