Yii实现的多级联动下拉菜单
本文实例讲述了Yii实现的多级联动下拉菜单。分享给大家供大家参考,具体如下:
1.视图文件
<?phpechoCHtml::activeDropDownList($model,'zmg_id',MemGroup::model()->getMemGroup(),array(
'class'=>'s_iptw_120',
'empty'=>'请选择会员组',
'ajax'=>array(
'type'=>'GET',
'url'=>CController::createUrl('cmpTemplates/getMemType'),
'update'=>'#CmpTemplates_zmg_ids',
'data'=>array('mid'=>"js:this.value")
),
))?>
<?phpecho$form->dropDownList($model,'zmg_ids',array(),array('class'=>'s_iptw_120','empty'=>'选择会员等级'))?>
2.控制器
/**
*获取会员组,对应的会员等级,用于下拉菜单
*/
publicfunctionactionGetMemType($mid=0)
{
$criteria=newCDbCriteria;
$criteria->compare('zmg_id',$mid);
$memType=MemType::model()->findAll($criteria);
$name='选择会员等级';
echoCHtml::tag('option',array('value'=>0),$name,true);
foreach($memTypeas$val){
echoCHtml::tag('option',array('value'=>$val->zmt_id),CHtml::encode($val->zmt_title),true);
}
}
3.模型
/*
*取会员组信息
*/
publicfunctiongetMemGroup($type=null){
if($type==null){
$criteria=newCDbCriteria;
$criteria->compare('type','1');
$memGroup=MemGroup::model()->findAll($criteria);
returnCHtml::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程序设计有所帮助。