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 相关文章推荐
超级简单的发送邮件程序
Oct 09 PHP
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
Mar 28 PHP
fleaphp常用方法分页之Pager使用方法
Apr 23 PHP
PHP实现邮件群发的源码
Jun 18 PHP
ThinkPHP模板引擎之导入资源文件方法详解
Jun 18 PHP
php使用GD实现颜色渐变实例
Jun 02 PHP
php实现zip文件解压操作
Nov 03 PHP
php创建无限级树型菜单
Nov 05 PHP
thinkphp3.2.3版本的数据库增删改查实现代码
Sep 22 PHP
浅谈PHP中如何实现Hook机制
Nov 14 PHP
Thinkphp5 自定义上传文件名的实现方法
Jul 23 PHP
PHP中关于php.ini参数优化详解
Feb 28 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
日本收入最高的漫画家:海贼王作者版税年收入高达8.45亿元
2020/03/04 日漫
谏山创故乡大分县日田市水坝将设立《进击的巨人》立艾伦、三笠以及阿尔敏的铜像!
2020/03/06 日漫
[转帖]PHP世纪万年历
2006/12/06 PHP
PHP优于Node.js的五大理由分享
2012/09/15 PHP
PHP重定向的3种方式
2013/03/07 PHP
PHP实现下载远程图片保存到本地的方法
2017/06/19 PHP
jquery 可排列的表实现代码
2009/11/13 Javascript
jQuery Autocomplete自动完成插件
2010/07/17 Javascript
JS实现局部选择打印和局部不选择打印
2014/04/03 Javascript
jQuery中unwrap()方法用法实例
2015/01/16 Javascript
js实现的tab标签切换效果代码分享
2015/08/25 Javascript
JS实现动态增加和删除li标签行的实例代码
2016/10/16 Javascript
利用vue-router实现二级菜单内容转换
2016/11/30 Javascript
老生常谈的跨域处理
2017/01/11 Javascript
JS实现的二叉树算法完整实例
2017/04/06 Javascript
在一个页面实现两个zTree联动的方法
2017/12/20 Javascript
JavaScript中的一些隐式转换和总结(推荐)
2017/12/22 Javascript
vue中render函数的使用详解
2018/10/12 Javascript
浅谈Vue3.0之前你必须知道的TypeScript实战技巧
2019/09/11 Javascript
原生js实现密码强度验证功能
2020/03/18 Javascript
JQuery+drag.js上传图片并且实现图片拖曳
2020/11/18 jQuery
jQuery实现手风琴特效
2021/01/11 jQuery
使用Python的Scrapy框架编写web爬虫的简单示例
2015/04/17 Python
Python中struct模块对字节流/二进制流的操作教程
2017/01/21 Python
Python批量查询域名是否被注册过
2017/06/21 Python
Python常用字符串替换函数strip、replace及sub用法示例
2018/05/21 Python
使用PyCharm官方中文语言包汉化PyCharm
2020/11/18 Python
css3实现背景颜色渐变让图片不再是唯一的实现方式
2012/12/18 HTML / CSS
如果一个类实现了多个接口但是这些接口有相同的方法名将会怎样
2013/06/16 面试题
汽车电子与维修专业大学生求职信
2013/09/28 职场文书
创业者是否需要商业计划书?
2014/02/07 职场文书
护士毕业实习感言
2014/03/05 职场文书
元宵节主持词
2014/03/25 职场文书
小学教师师德演讲稿
2014/05/06 职场文书
2014年国庆晚会主持词
2014/09/19 职场文书
《莫泊桑拜师》教学反思
2016/02/22 职场文书