Yii把CGridView文本框换成下拉框的方法


Posted in PHP onDecember 03, 2014

本文实例讲述了Yii把CGridView文本框换成下拉框的方法。分享给大家供大家参考。具体实现方法如下:

使用yii的朋友都知道Yii中的CGridView默认显示提文本框了,那么我们要怎么把它转换成下拉框呢?本文就此分析一下解决方法。

默认情况下CGridView会生成一个文本框,但是这并不友好,用户往往希望知道有什么可选的,特别是数据库里存的是数字id的时候,我们希望将数字转换为可读的文本,这时候只需要修改一下表头的"filter"属性就行了,比如:

<?php

$this->widget('zii.widgets.grid.CGridView', array(

    'id'=>'business-grid',

    'dataProvider'=>$dataProvider,

    'filter'=> Business::model(),

    'columns'=>array(

        'business_id',

        'name',

        'package_id'=> array(

            'name' => 'package_id',

            'value' => '$data->package->package_title',

            'filter'=> CHtml::listData(Packages::model()->findAll(array('order'=>'package_title')), 'package_id', 'package_title')

        ),

        'user_id'=>array(

            'name' => 'user_id',

            'value' => '$data->user->name',

            'filter'=> CHtml::listData(Users::model()->findAll(array('order'=>'firstname')), 'id', 'name')

        ), 

        'categories' => array(

            'name' => 'categories',

            'value' => '$data->returnAllCategories(", ",false);',

            'filter'=> CHtml::listData(Categories::model()->findAll(array('order'=>'category')), 'cat_id', 'category')

        ),

        'keywords' => array(

            'header' => 'Keywords',

            'value' => '$data->returnAllKeywords(", ",false);',

        ),

        'links'=>array(

            'header'=>'Manage',

            'type'=>'raw',

            'value'=>'CHtml::link(CHtml::image(Yii::app()->request->baseUrl."/images/admin/approve.png","Approve"), array("approve","id"=>$data->business_id,"item"=>"business"),array("class"=>"approve-link","title"=>"Approve Business"))." ".

       CHtml::link(CHtml::image(Yii::app()->request->baseUrl."/images/admin/reject.png","Reject"), array("reject","id"=>$data->business_id,"item"=>"business"),array("class"=>"reject-link","title"=>"Reject Business"))',

        ),

    ),

));

生成type下拉框可以这么写:

'type'=>array(

    'name' => 'type',

    'filter'=>$model->getTypeOptions(),

),
'type'=>array(

    'name' => 'type',

    'filter'=>$model->getTypeOptions(),

),

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
一个简洁的多级别论坛
Oct 09 PHP
Smarty结合Ajax实现无刷新留言本实例
Jan 02 PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 PHP
浅析PHP编程中10个最常见的错误
Aug 08 PHP
php获取远程文件内容的函数
Nov 02 PHP
PHP curl模拟登录带验证码的网站
Nov 30 PHP
jQuery向下滚动即时加载内容实现的瀑布流效果
Jan 07 PHP
详解PHP对象的串行化与反串行化
Jan 24 PHP
PHP Curl模拟登录微信公众平台、新浪微博实例代码
Jan 28 PHP
Zend Framework教程之动作的基类Zend_Controller_Action详解
Mar 07 PHP
理解php依赖注入和控制反转
May 11 PHP
laravel admin实现分类树/模型树的示例代码
Jun 10 PHP
Yii实现多按钮保存与提交的方法
Dec 03 #PHP
Yii实现MySQL多数据库和读写分离实例分析
Dec 03 #PHP
Yii框架登录流程分析
Dec 03 #PHP
Yii框架获取当前controlle和action对应id的方法
Dec 03 #PHP
PHP多线程类及用法实例
Dec 03 #PHP
php提取字符串中网站url地址的方法
Dec 03 #PHP
thinkphp常见路径用法分析
Dec 02 #PHP
You might like
PHP 中的批处理的实现
2007/06/14 PHP
PHP使用feof()函数读文件的方法
2014/11/07 PHP
JS 进度条效果实现代码整理
2011/05/21 Javascript
javascript高级学习笔记整理
2011/08/14 Javascript
ejs v9 javascript模板系统
2012/03/21 Javascript
Knockout数组(observable)使用详解示例
2013/11/15 Javascript
jQuery实现渐变下拉菜单的简单方法
2015/03/11 Javascript
实用又漂亮的BootstrapValidator表单验证插件
2016/05/30 Javascript
JQuery之proxy实现绑定代理方法
2016/08/01 Javascript
使用Bootstrap4 + Vue2实现分页查询的示例代码
2017/12/21 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
js观察者模式的弹幕案例
2020/11/23 Javascript
[55:11]完美世界DOTA2联赛PWL S2 SZ vs LBZS 第一场 11.26
2020/11/30 DOTA
从零学python系列之教你如何根据图片生成字符画
2014/05/23 Python
跟老齐学Python之玩转字符串(2)
2014/09/14 Python
Django数据库操作的实例(增删改查)
2017/09/04 Python
VTK与Python实现机械臂三维模型可视化详解
2017/12/13 Python
Python数据分析之双色球中蓝红球分析统计示例
2018/02/03 Python
Windows下的Python 3.6.1的下载与安装图文详解(适合32位和64位)
2018/02/21 Python
使用Python的toolz库开始函数式编程的方法
2018/11/15 Python
python设置环境变量的作用和实例
2019/07/09 Python
利用python读取YUV文件 转RGB 8bit/10bit通用
2019/12/09 Python
python thrift 实现 单端口多服务的过程
2020/06/08 Python
python 三种方法提取pdf中的图片
2021/02/07 Python
css3 图片圆形显示 如何CSS将正方形图片显示为圆形图片布局
2014/10/10 HTML / CSS
蔻驰美国官网:COACH美国
2016/08/18 全球购物
CAT鞋美国官网:CAT Footwear
2017/11/27 全球购物
什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
2012/05/23 面试题
中医药大学市场营销专业自荐信
2013/09/29 职场文书
环境工程求职简历的自我评价范文
2013/10/24 职场文书
不服从上级领导安排的检讨书
2014/09/14 职场文书
幼儿园迎国庆65周年活动策划方案
2014/09/16 职场文书
光棍节联谊晚会活动策划书
2014/10/10 职场文书
2014年财务人员工作总结
2014/11/11 职场文书
财务工作个人总结
2015/02/27 职场文书
MySQL中的引号和反引号的区别与用法详解
2021/10/24 MySQL