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 相关文章推荐
Apache+php+mysql在windows下的安装与配置图解(最新版)
Nov 30 PHP
php下将XML转换为数组
Jan 01 PHP
php设计模式 Decorator(装饰模式)
Jun 26 PHP
PHP fopen 读取带中文URL地址的一点见解
Sep 25 PHP
解析thinkphp import 文件内容变量失效的问题
Jun 20 PHP
PHP开发工具ZendStudio下Xdebug工具使用说明详解
Nov 11 PHP
THINKPHP2.0到3.0有哪些改进之处
Jan 04 PHP
初识通用数据库操作类――前端easyui-datagrid,form(php)
Jul 31 PHP
php析构函数的简单使用说明
Aug 24 PHP
PHP的Json中文处理解决方案
Sep 29 PHP
WAF的正确bypass
Jan 05 PHP
Laravel框架运行出错提示RuntimeException No application encryption key has been specified.解决方法
Apr 02 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
有道搜索和IP138的IP的API接口(PHP应用)
2012/11/29 PHP
PHP会话控制:Session与Cookie详解
2014/09/27 PHP
PHP实现即时输出、实时输出内容方法
2015/05/27 PHP
php示例详解Constructor Prototype Pattern 原型模式
2015/10/15 PHP
php实现无限级分类查询(递归、非递归)
2016/03/10 PHP
Extjs中TabPane如何嵌套在其他网页中实现思路及代码
2013/01/27 Javascript
JS保留两位小数,多位小数的示例代码
2014/01/07 Javascript
text-align:justify实现文本两端对齐 兼容IE
2015/08/19 Javascript
vue.js 初体验之Chrome 插件开发实录
2017/05/13 Javascript
利用pm2部署多个node.js项目的配置教程
2017/10/22 Javascript
jQuery实现鼠标响应式透明度渐变动画效果示例
2018/02/13 jQuery
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
React router动态加载组件之适配器模式的应用详解
2018/09/12 Javascript
JavaScript函数式编程(Functional Programming)组合函数(Composition)用法分析
2019/05/22 Javascript
JS三级联动代码格式实例详解
2019/12/30 Javascript
JS中锚点链接点击平滑滚动并自由调整到顶部位置
2021/02/06 Javascript
[38:39]完美世界DOTA2联赛循环赛 IO vs GXR BO2第二场 11.04
2020/11/05 DOTA
Python+Turtle动态绘制一棵树实例分享
2018/01/16 Python
浅谈flask中的before_request与after_request
2018/01/20 Python
Python中单例模式总结
2018/02/20 Python
Python中enumerate()函数编写更Pythonic的循环
2018/03/06 Python
华为2019校招笔试题之处理字符串(python版)
2019/06/25 Python
Numpy数组array和矩阵matrix转换方法
2019/08/05 Python
Python range、enumerate和zip函数用法详解
2019/09/11 Python
Python3运算符常见用法分析
2020/02/14 Python
Python双链表原理与实现方法详解
2020/02/22 Python
python smtplib发送多个email联系人的实现
2020/10/09 Python
python实现定时发送邮件
2020/12/23 Python
Too Faced官网:美国知名彩妆品牌
2017/03/07 全球购物
美国奢侈品在线团购网站:Gilt City
2017/11/16 全球购物
装修五一活动策划案
2014/01/23 职场文书
火锅店的活动方案
2014/08/15 职场文书
公司授权委托书格式范文
2014/10/02 职场文书
2016年五一国际劳动节活动总结
2016/04/06 职场文书
创业计划书之养殖业
2019/10/11 职场文书
Go gRPC进阶教程gRPC转换HTTP
2022/06/16 Golang