yii multiple listBox顶部的选定值

时间:2012-10-16 13:21:10

标签: php yii

有没有办法在顶部显示所有多个选定值。
例如。如果列表包含1到10并且所选值为4,8则列表框应具有类似4,8,1,2,3,5,6,7,9,10

的值

1 个答案:

答案 0 :(得分:1)

这是列出选择数据的两种常用方法。

echo CHtml::dropDownList('public', $model, array('0' => 'Private', '1' => 'Public'));

echo CHtml::activeDropDownList($model, 'developers_id', CHtml::listData(Developers::model()->findAll(), 'id', 'email') , array('prompt'=>'Select'));

第一个使用数组,您可以根据用户偏好定义,重新定位数组键。

第二,可能在findAll()调用中引入一个Criteria,它将首先命令用户选择的值,它将完成这项工作。

<强>更新

你可以这样:

echo CHtml::listBox('listname',$selectedlist,array_intersect_key($alllist,array_flip($selectedlist))+$alllist,array('multiple' => 'multiple'));

在示例中:

$selectedlist=array(3,5);
$alllist=array(1=>'one',2=>'two',3=>'three',4=>'four',5=>'five');

$a=array_intersect_key($alllist,array_flip($selectedlist))+$alllist;
print_r($a);

Array ( [3] => three [5] => five [1] => one [2] => two [4] => four )

查看行动中的代码http://ideone.com/6BDxQ