Yii实现的多级联动下拉菜单


Posted in PHP onJuly 13, 2016

本文实例讲述了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框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP4实际应用经验篇(7)
Oct 09 PHP
PHP5 面向对象(学习记录)
Dec 02 PHP
创建数据库php代码 用PHP写出自己的BLOG系统
Apr 12 PHP
基于PHP生成静态页的实现方法
May 10 PHP
PHP转换IP地址到真实地址的方法详解
Jun 09 PHP
PHP上传文件时文件过大$_FILES为空的解决方法
Nov 26 PHP
PHP上传文件时自动分配路径的方法
Jan 09 PHP
基础的WordPress插件制作教程
Nov 24 PHP
在php7中MongoDB实现模糊查询的方法详解
May 03 PHP
PHP微信公众号开发之微信红包实现方法分析
Jul 14 PHP
Discuz不使用插件实现简单的打赏功能
Mar 21 PHP
PHP 对象接口简单实现方法示例
Apr 13 PHP
YII视图整合kindeditor扩展的方法
Jul 13 #PHP
Yii+upload实现AJAX上传图片的方法
Jul 13 #PHP
Yii安装与使用Excel扩展的方法
Jul 13 #PHP
Yii配置与使用memcached缓存的方法
Jul 13 #PHP
Yii使用smsto短信接口的函数demo示例
Jul 13 #PHP
PHP实现自动识别原编码并对字符串进行编码转换的方法
Jul 13 #PHP
PHP中类属性与类静态变量的访问方法示例
Jul 13 #PHP
You might like
php递归列出所有文件和目录的代码
2008/09/10 PHP
php is_file 判断给定文件名是否为一个正常的文件
2010/05/10 PHP
PHP反向代理类代码
2014/08/15 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
thinkphp诸多限制条件下如何getshell详解
2020/12/09 PHP
判断页面是关闭还是刷新的js代码
2007/01/28 Javascript
js解析与序列化json数据(一)json.stringify()的基本用法
2013/02/01 Javascript
jQuery过滤选择器用法分析
2015/02/10 Javascript
JavaScript实现单击下拉框选择直接跳转页面的方法
2015/07/02 Javascript
JS实现自动变化的导航菜单效果代码
2015/09/09 Javascript
js实现的光标位置工具函数示例
2016/10/03 Javascript
jQuery获取table表中的td标签(实例讲解)
2017/07/28 jQuery
详解微信小程序文件下载--视频和图片
2019/04/24 Javascript
JavaScript动态添加数据到表单并提交的几种方式
2019/06/26 Javascript
js实现简单分页导航栏效果
2019/06/28 Javascript
cordova+vue+webapp使用html5获取地理位置的方法
2019/07/06 Javascript
[03:24]CDEC.Y赛前采访 努力备战2016国际邀请赛中国区预选赛
2016/06/25 DOTA
Python3搜索及替换文件中文本的方法
2015/05/22 Python
TensorFlow实现卷积神经网络CNN
2018/03/09 Python
python list是否包含另一个list所有元素的实例
2018/05/04 Python
python用列表生成式写嵌套循环的方法
2018/11/08 Python
python3 批量获取对应端口服务的实例
2019/07/25 Python
如何解决django-celery启动后迅速关闭
2019/10/16 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
Python爬虫设置ip代理过程解析
2020/07/20 Python
Python绘制组合图的示例
2020/09/18 Python
HTML5使用Audio标签实现歌词同步的效果
2016/03/17 HTML / CSS
英国经典球衣网站:Classic Football Shirts
2017/05/20 全球购物
中国文明网签名寄语
2014/01/18 职场文书
七匹狼男装广告词
2014/03/21 职场文书
大学毕业寄语大全
2014/04/10 职场文书
供货协议书范本
2014/04/22 职场文书
党的群众路线教育实践活动剖析材料
2014/09/30 职场文书
个人工作总结怎么写?
2019/04/09 职场文书
一些让Python代码简洁的实用技巧总结
2021/08/23 Python
Tomcat用户管理的优化配置详解
2022/03/31 Servers