這篇文章主要介紹了Yii實現的多級聯動下拉式功能表,包括視圖、模型及控制器的相關實現代碼,涉及基於Yii的資料庫查詢、數組遍曆與資料顯示等相關操作技巧,需要的朋友可以參考下
本文執行個體講述了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]; } }}
以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!