Yii实现的多级联动下拉菜单
2018-09-07 22:11
本文实例讲述了Yii实现的多级联动下拉菜单。分享给大家供大家参考,具体如下:
1. 视图文件
<?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=>选择会员等级))?>
2. 控制器
/** * 获取会员组,对应的会员等级,用于下拉菜单 */ 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); } }
3. 模型
/* * 取会员组信息 */ 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]; } } }
更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。