Yii2框架dropDownList下拉菜单用法实例分析


Posted in PHP onJuly 18, 2016

本文实例讲述了Yii2框架dropDownList下拉菜单用法。分享给大家供大家参考,具体如下:

dropDownList是yii框架中一个自带的下拉功能了解,我们可以直接使用dropDownList来实现html的select菜单,下面一起来看看。

Yii2.0 默认的 dropdownlist 的使用方法.

<?php echo $form->field($model, 'name[]')->dropDownList(['a' => 'Item A', 'b' => 'Item B', 'c' => 'Item C']); ?>

在yii2中加放请选择的下拉菜单

<php echo $form->field($model, 'name[]')->dropDownList($listData, ['prompt'=>'Select...']);>

DropDownList 在模型中使用

<?php
//use app\models\Country;
$countries=Country::find()->all();
//use yii\helpers\ArrayHelper;
$listData=ArrayHelper::map($countries,'code','name');
echo $form->field($model, 'name')->dropDownList(
                $listData,
                ['prompt'=>'Select...']);
?>

下拉菜单的默认值设置我们使用 prompt 关键字

实例:

$form->field($searchmodel, 'moneytype')->dropDownList($soucetype, ['prompt' => '请选择金额来源')])

好的 下拉菜单的默认值设置就是这样简单,下面我们在说说带有插件的文本框默认值是如何设置的

我现在就拿这个表单后面的两个使用了时间插件的文本域为例,在这里 prompt 关键字就不行了,我们要使用 placeholder 关键字

$form->field($searchmodel, 'startdate')->widget(DatePicker::className(),['clientOptions' => ['dateFormat' => 'yy-mm-dd']])->textInput(['placeholder' => Yii::t('app', 'Start time')])

ActiveForm 类的 dropDownList 方法(优点,默认使用yii的样式)
1、在控制器的方法里面 ,我们需要拿到数据,一定是 findAll() 或者是 all() 方法的数据,实例如下:
public function actionIndex()
{
    $model = new UserModel();
    $data = Customer::find()->all();
    return $this->render('index', [
      'model' => $model,
      'data' => $data,
    ]);
}

在视图页面,我们使用 yii 的表单生成器。

$form->field($model, 'username')->dropDownList(ArrayHelper::map($data,'id', 'customer_name'));

2.1、dropDownList           --->     yii2.0  下拉列表的方法
2.2、ArrayHelper::map()     --->     构建一个(key => value) 的一维或多维数组
2.3.1、 $data               --->     数据源
2.3.2、 id                  --->     option 的 value 值
2.3.3、 customer_name       --->     option 标签的 值

Html 类的 activeDropDownList方法(优点,可以自定义任何样式)

1、和第一种方法的第一步一样,拿到数据。不过多解释了。
2、\yii\helpers\Html 类为我们提供了下拉列表的实现方法 activeDropDownList 方法

Html::activeDropDownList($model, 'username', ArrayHelper::map($data,'id', 'customer_name'), ['style' => 'border:1px solid red;']);

我没写 php 标签,相信写过新浪博客的程序猿都知道,写了 php 标签 整个代码都被过滤了,所以复制代码,自己加上标签

参数和第一种方法的参数含义相同,不做解释。

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

PHP 相关文章推荐
PHP+MYSQL开发工具及资源收藏
Jan 02 PHP
IIS6的PHP最佳配置方法
Mar 19 PHP
PHP 开源框架22个简单简介
Aug 24 PHP
PHP逐行输出(ob_flush与flush的组合)
Feb 04 PHP
php 调试利器debug_print_backtrace()
Jul 23 PHP
用来解析.htgroup文件的PHP类
Sep 05 PHP
PHP URL路由类实例
Nov 12 PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 PHP
php检查字符串中是否有外链的方法
Jul 29 PHP
php基于curl实现随机ip地址抓取内容的方法
Oct 11 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
Nov 16 PHP
Laravel向公共模板赋值方法总结
Jun 25 PHP
用HTML/JS/PHP方式实现页面延时跳转的简单实例
Jul 18 #PHP
浅谈PHP正则中的捕获组与非捕获组
Jul 18 #PHP
Yii2.0表关联查询实例分析
Jul 18 #PHP
php 实现301重定向跳转实例代码
Jul 18 #PHP
PHP的openssl加密扩展使用小结(推荐)
Jul 18 #PHP
PHP多进程编程总结(推荐)
Jul 18 #PHP
php 指定范围内多个随机数代码实例
Jul 18 #PHP
You might like
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
php网站被挂木马后的修复方法总结
2014/11/06 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
将光标定位于输入框最右侧实现代码
2012/12/04 Javascript
javascript自启动函数的问题探讨
2013/10/05 Javascript
深入理解JavaScript系列(28):设计模式之工厂模式详解
2015/03/03 Javascript
JavaScript面向对象的实现方法小结
2015/04/14 Javascript
前端学习笔记style,currentStyle,getComputedStyle的用法与区别
2016/05/28 Javascript
jQuery事件绑定和解绑、事件冒泡与阻止事件冒泡及弹出应用示例
2019/05/13 jQuery
vue中组件通信的八种方式(值得收藏!)
2019/08/09 Javascript
layui点击弹框页面 表单请求的方法
2019/09/21 Javascript
JS实现iframe中子父页面跨域通讯的方法分析
2020/03/10 Javascript
Python语言实现机器学习的K-近邻算法
2015/06/11 Python
Python单体模式的几种常见实现方法详解
2017/07/28 Python
Python自动化运维之IP地址处理模块详解
2017/12/10 Python
python实现图书馆研习室自动预约功能
2018/04/27 Python
Linux下多个Python版本安装教程
2018/08/15 Python
Python 使用 attrs 和 cattrs 实现面向对象编程的实践
2019/06/12 Python
解决Python3下map函数的显示问题
2019/12/04 Python
Pytorch自己加载单通道图片用作数据集训练的实例
2020/01/18 Python
python 如何调用远程接口
2020/09/11 Python
纽约家具、家居装饰和地毯店:ABC Carpet & Home
2017/06/21 全球购物
Rhone官方网站:男士运动服装、健身服装和高级运动服
2019/05/01 全球购物
PHP数据运算类型都有哪些
2013/11/05 面试题
写一个在SQL Server创建表的SQL语句
2012/03/10 面试题
平面设计自荐信
2013/10/07 职场文书
应届毕业生的自我鉴定
2013/11/13 职场文书
文科生自我鉴定
2014/02/15 职场文书
关于读书的演讲稿500字
2014/08/27 职场文书
领导班子四风问题对照检查材料
2014/09/27 职场文书
2016年春节慰问信息
2015/03/25 职场文书
房地产置业顾问工作总结
2015/10/23 职场文书
大学军训通讯稿(2016最新版)
2015/12/21 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
一篇文章弄懂MySQL查询语句的执行过程
2021/05/07 MySQL
【2·13】一图读懂中国无线电发展
2022/02/18 无线电