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
PHP学习之PHP运算符
Oct 09 PHP
PHP中防止直接访问或查看或下载config.php文件的方法
Jul 07 PHP
将CMYK颜色值和RGB颜色相互转换的PHP代码
Jul 28 PHP
如何让thinkphp在模型中自动完成session赋值小教程
Sep 05 PHP
浅谈本地WAMP环境的搭建
May 13 PHP
php返回当前日期或者指定日期是周几
May 21 PHP
Codeigniter中集成smarty和adodb的方法
Mar 04 PHP
自制PHP框架之路由与控制器
May 07 PHP
php微信公众号开发之简答题
Oct 20 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
Apr 23 PHP
浅析PHP echo 和 print 语句
Jun 30 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生成静态页面详解
2006/12/05 PHP
《PHP编程最快明白》第七讲:php图片验证码与缩略图
2010/11/01 PHP
PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析
2011/03/28 PHP
解析PHP工厂模式的好处
2013/06/18 PHP
php中socket的用法详解
2014/10/24 PHP
ThinkPHP入口文件设置及相关注意事项分析
2014/12/05 PHP
php app支付宝回调(异步通知)详解
2018/07/25 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
2020/04/14 PHP
jQuery表单域选择器用法分析
2015/02/10 Javascript
jQuery实现锚点scoll效果实例分析
2015/03/10 Javascript
跟我学习javascript的prototype原型和原型链
2015/11/18 Javascript
JavaScript限制在客户区可见范围的拖拽(解决scrollLeft和scrollTop的问题)(2)
2017/05/17 Javascript
浅谈Express异步进化史
2017/09/09 Javascript
Three.js开发实现3D地图的实践过程总结
2017/11/20 Javascript
jQuery实现的简单手风琴效果示例
2018/08/29 jQuery
js实现ATM机存取款功能
2020/10/27 Javascript
vue+element模态框中新增模态框和删除功能
2019/06/11 Javascript
浅谈layui数据表格判断问题(加入表单元素),设置单元格样式
2019/10/26 Javascript
Vue根据条件添加click事件的方式
2019/11/09 Javascript
vue二选一tab栏切换新做法实现
2021/01/19 Vue.js
[04:13]2018国际邀请赛典藏宝瓶Ⅱ饰品一览
2018/07/21 DOTA
paramiko模块安装和使用(远程登录服务器)
2014/01/27 Python
Python的爬虫程序编写框架Scrapy入门学习教程
2016/07/02 Python
python实现类之间的方法互相调用
2018/04/29 Python
对python插入数据库和生成插入sql的示例讲解
2018/11/14 Python
Django 数据库同步操作技巧详解
2019/07/19 Python
Python 使用list和tuple+条件判断详解
2019/07/30 Python
Django如何实现上传图片功能
2019/08/16 Python
Python自动化xpath实现自动抢票抢货
2020/09/19 Python
pycharm 2020 1.1的安装流程
2020/09/29 Python
CSS3 display知识详解
2015/11/25 HTML / CSS
英国网上购买肉类网站:Great British Meat
2018/10/17 全球购物
2015年乡镇发展党员工作总结
2015/03/31 职场文书
小学教师暑期培训心得体会
2016/01/09 职场文书
导游词之塘栖古镇
2019/12/04 职场文书
为什么MySQL 删除表数据 磁盘空间还一直被占用
2021/10/16 MySQL