Drop down menu Yii框架中的依赖多下拉列表
我想做两个下拉列表Drop down menu Yii框架中的依赖多下拉列表,drop-down-menu,yii,multi-select,Drop Down Menu,Yii,Multi Select,我想做两个下拉列表 选择组 选择成员(多下拉列表) 当用户选择第一个下拉列表(组)时,我想用所选组的成员动态填充Members Multidropdowen 选择成员是一个多下拉列表,用户可以选择多个成员 我能够完成依赖下拉列表,或者独立的多下拉列表,但是我不能集成这两者。 我已经尝试了扩展http://www.yiiframework[dot]com/extension/emultiselect和http://www.yiiframework[dot]com/extension/echmult
我已经尝试了扩展
http://www.yiiframework[dot]com/extension/emultiselect
和http://www.yiiframework[dot]com/extension/echmultiselect
您可以为第一个下拉菜单实现ajax更新,以更新第二个下拉菜单:
echo CHtml::dropDownList('country_id','', array(1=>'USA',2=>'France',3=>'Japan'),
array(
'ajax' => array(
'type'=>'POST', //request type
'url'=>CController::createUrl('currentController/dynamiccities'), //url to call.
//Style: CController::createUrl('currentController/methodToCall')
'update'=>'#city_id', //selector to update
//'data'=>'js:javascript statement'
//leave out the data key to pass all form values through
)));
//empty since it will be filled by the other dropdown
echo CHtml::dropDownList('city_id','', array());
在控制器中,您可以拥有:
public function actionDynamiccities()
{
$data=Location::model()->findAll('parent_id=:parent_id',
array(':parent_id'=>(int) $_POST['country_id']));
$data=CHtml::listData($data,'id','name');
foreach($data as $value=>$name)
{
echo CHtml::tag('option',
array('value'=>$value),CHtml::encode($name),true);
}
}
资料来源: