1. 第一种方法:ActiveForm 类的 dropDownList 方法(优点,默认使用yii的样式)
  2.  
  3. 1、在控制器的方法里面 ,我们需要拿到数据,一定是 findAll() 或者是 all() 方法的数据,实例如下:
  4. public function actionIndex()
  5. {
  6. $model = new UserModel();
  7. $data = Customer::find()->all();
  8. //类似这样 :data = [['id'=>1,'customer_name'=>'角色'],['id'=>2,'customer_name'=>'权限']];
  9. return $this->render('index', [
  10. 'model' => $model,
  11. 'data' => $data,
  12. ]);
  13. }
  14.  
  15. 2、在视图页面,我们使用 yii 的表单生成器。
  16. <?phpuse yii\helpers\Html;
  17. use yii\widgets\ActiveForm;?>
  18. <?php $form = ActiveForm::begin(); ?>
  19.  
  20. $form->field($model, 'username')->dropDownList(yii\helpers\ArrayHelper::map($data,'id', 'customer_name'),['prompt'=>'请选择','style'=>'width:100px','name'=>'user']);
  21.  
  22. 2.1dropDownList ---> yii2.0 下拉列表的方法
  23. 2.2ArrayHelper::map() ---> 构建一个(key => value) 的一维或多维数组
  24. 2.3.1 $data ---> 数据源
  25. 2.3.2 id ---> option value
  26. 2.3.3 customer_name ---> option 标签的值
  27.  
  28. 第二种方法:Html 类的 activeDropDownList方法(优点,可以自定义任何样式)
  29. 1、和第一种方法的第一步一样,拿到数据。不多解释了。
  30. 2\yii\helpers\Html 类为我们提供了下拉列表的实现方法 activeDropDownList 方法
  31. yii\helpers\Html::activeDropDownList($model, 'username', yii\helpers\ArrayHelper::map($data,'id', 'customer_name'), ['style' => 'border:1px solid red;']);
  32.  
  33. 我没写 php 标签,大家自己复制代码,自己加上标签
  34. 参数和第一种方法的参数含义相同,不做解释。
  35.  
  36. 第三种方法:Html 类的 dropDownList方法(优点,可以自定义任何样式)
  37. 1、和第一种方法的第一步一样,拿到数据。不过多解释了。
  38. 2\yii\helpers\Html 类为我们提供了下拉列表的实现方法 dropDownList方法
  39. <?=yii\helpers\Html::dropDownList('user', null, yii\helpers\ArrayHelper::map($data,'admin_id', 'admin_user'), ['class' => 'sel','prompt'=>'请选择']);?>

如有哪里不对的地方,可以说说。互相交流,互相提升

yii2.0下拉列表的使用的更多相关文章

  1. Yii2.0.7 限制user module登录遇到的问题

    在Yii2.0.6的时候我是在以下文件通过以下方法实现的. frontend/modules/user/Module.php namespace frontend\modules\user; clas ...

  2. yii2.0归档安装方法

    我前几天用composer安装 一直没成功  我就用归档的方法安装了  所以这篇文字只帮助那些用归档方法安装的朋友 Yii是一个高性能的,适用于开发WEB2.0应用的PHP框架. Yii自带了丰富的功 ...

  3. [moka同学笔记]三、Yii2.0课程笔记(魏曦老师教程)关联字段增加搜索

    关联字段增加搜索 post表关联adminuser表,通过post.author_id  adminuser.id关联,在YII2.0生成搜索,关联字段搜索时,需要输入关联字段author的id才能搜 ...

  4. Yii2.0高级框架数据库增删改查的一些操作(转)

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  5. yii2.0框架安装心得

    yii2.0安装心得 能够搜索到这篇文章的朋友相信是对yii框架有兴趣的,但是我不得不吐槽的是,这个安装过程确实让人头疼,接下来就让大家见证一下这个纠结的过程 根据官网的说法,安装这个框架需要用到co ...

  6. yii2.0高级框架配置时打开init.bat秒退的解决方法 (两种方法)

    第一种: 这几天刚接触到yii2.0框架,在配置advanced版本时运行init.bat初始化文件时老是闪退: 用cmd运行该文件时显示:The OpenSSL PHP extension is r ...

  7. yii2.0 图片上传(摘录)

    文章来源:http://blog.sina.com.cn/s/blog_88a65c1b0101izmn.html 下面小伙就带领大学学习一下 Yii2.0 的图片上传类的使用,还是老样子,如果代码样 ...

  8. yii2.0用户登录,退出判断(摘录)

    文章来源:http://blog.sina.com.cn/s/blog_88a65c1b0101ix13.html 判断用户是否登录 在 Yii2.0 里面,判断用户是否已经登录,我们用下面的代码即可 ...

  9. 下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作

    下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作 User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的 ...

随机推荐

  1. Java错题

    加粗为正确答案,绿色为错选答案 1.对于以下代码: for ( int i=0; i<10; i++)  System.out.println(i); for循环后,i的值是多少? A.i不再存 ...

  2. C# 连接 SQLServer 及操作

    随笔:连接: // 将tb_User表数据添加到DataGridView中 string sqlconn = "Data Source=localhost;Initial Catalog=d ...

  3. HTML5学习之语义化标签(一)

    一.为什么HTML5要引入新语义标签 在HTML5出现之前,我们一般采用DIV+CSS布局我们的页面.但是这样的布局方式不仅使我们的文档结构不够清晰,而且不利于搜索引擎爬虫对我们页面的爬取.为了解决上 ...

  4. struts2系列笔记(1)

    struts2框架 如果你之前在MVC模式的时候一直都是通过servlet,获取和返回数据,那么现在开始学习struts2框架, Struts是一个实现MVC设计模式的优秀的框架.它的许多优点我就不说 ...

  5. 浅谈 MVC中的ViewData、ViewBag和TempData

    ViewBag和TempData的区别 ViewData ViewBag 它是Key/Value字典集合 它是dynamic类型对像 从Asp.net MVC 1 就有了 ASP.NET MVC3 才 ...

  6. angularJS+requireJS实现controller及directive的按需加载

    最近因为项目的比较大,需要加载的js文件较多,为了提高首屏页面的加载速度,需要对js文件进行按需加载,然后网上参考了一些资料,自己也深入研究一番之后,实现了按需加载控制器js文件及指令js文件的效果: ...

  7. C:\Users\用户名\AppData里面的文件可以删除吗

    很多人发现电脑中C:\Users\用户名\AppData 占据了很大的空间,那么可以将其删除吗?下面为大家详细介绍相关知识! C:\Users\用户名\AppData里面一般有三个文件夹,分别是Loc ...

  8. show_you_my_codes 001

    program 001 第 0001 题:做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券), 使用 Python 如何生成 200 个激活码(或者优 ...

  9. 记使用sed的一次坑

    sed做为linux下的三剑客,自然功能强大,但是如果使用不当,反而适得其反,今天就因为这个命令采了很深坑,分析一下原因,以谏后来者. 情景回顾: 项目中使用的一个python爬虫采用的是多线程并发爬 ...

  10. instance “error” 了怎么办?- 每天5分钟玩转 OpenStack(159)

    这是 OpenStack 实施经验分享系列的第 9 篇. OpenStack 用多了,经常会遇到这种情况:对 instance 执行某个操作如果失败了就会处于 "error" 状态 ...