您的位置:首页 > 编程语言 > PHP开发

Yii - 连动下拉菜单,可多级哦

2013-03-06 14:20 148 查看
视图文件
<?php echo CHtml::activeDropDownList($model,'zmg_id',MemGroup::model()->getMemGroup(),array(
'class'=>'s_ipt w_120',
'empty'=>'请选择会员组',
'ajax' =>array(
'type'=>'GET',
'url'=>CController::createUrl('cmpTemplates/getMemType'),
'update'=>'#CmpTemplates_zmg_ids',
'data'=>array('mid'=>"js:this.value")
),
))?>
<?php echo $form->dropDownList($model,'zmg_ids',array(),array('class'=>'s_ipt w_120','empty'=>'选择会员等级'))?>


控制器
/**
* 获取会员组,对应的会员等级,用于下拉菜单
*/
public function actionGetMemType($mid=0)
{
$criteria=new CDbCriteria;
$criteria->compare('zmg_id',$mid);
$memType = MemType::model()->findAll($criteria);

$name = '选择会员等级';
echo CHtml::tag('option', array('value'=>0), $name, true);
foreach($memType as $val) {
echo CHtml::tag('option', array('value'=>$val->zmt_id),CHtml::encode($val->zmt_title),true);
}
}


模型
/*
* 取会员组信息
*/
public function getMemGroup($type=null){
if($type==null){
$criteria=new CDbCriteria;
$criteria->compare('type','1');
$memGroup = MemGroup::model()->findAll($criteria);
return CHtml::listData($memGroup,'zmg_id','zmg_title');
}else{
$level = $this->getMemGroup();
if(array_key_exists($type,$level)){
return $level[$type];
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: