1

我想将多选设置为我的多列表框。

我的视图页面中有两个结果。

$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有列表的选项。

问题是选择不起作用..没有选择...

我怎样才能做到这一点?

如果我的代码有任何问题..?

4

1 回答 1

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多列表中选择了值

于 2012-09-25T06:15:42.243 回答