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 相关文章推荐
PHP3 safe_mode 失效漏洞
Oct 09 PHP
PHP的范围解析操作符(::)的含义分析说明
Jul 03 PHP
PHP 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程
Jun 12 PHP
PHP函数eval()介绍和使用示例
Aug 20 PHP
PHP文件缓存类示例分享
Jan 30 PHP
PHP数组函数array_multisort()用法实例分析
Apr 02 PHP
PHP  Yii清理缓存的实现方法
Nov 10 PHP
CI框架表单验证实例详解
Nov 21 PHP
php 反斜杠处理函数addslashes()和stripslashes()实例详解
Dec 25 PHP
PHP实现数组根据某个单元字段排序操作示例
Aug 01 PHP
golang实现php里的serialize()和unserialize()序列和反序列方法详解
Oct 30 PHP
PHP实现PDO操作mysql存储过程示例
Feb 13 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
解析PayPal支付接口的PHP开发方式
2010/11/28 PHP
比较详细PHP生成静态页面教程
2012/01/10 PHP
细谈php中SQL注入攻击与XSS攻击
2012/06/10 PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
2016/07/07 PHP
去除链接虚线全面分析总结
2006/08/15 Javascript
两个比较有用的Javascript工具函数代码
2010/02/17 Javascript
JQuery的Validation插件中Remote验证的中文问题
2010/07/26 Javascript
Dom操作之兼容技巧分享
2011/09/20 Javascript
使用javascript创建快捷方式的简单实例
2013/08/09 Javascript
JavaScript实现数字数组按照倒序排列的方法
2015/04/06 Javascript
全面解析Bootstrap手风琴效果
2020/04/17 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
vue动态组件实现选项卡切换效果
2017/03/08 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
2017/12/16 Javascript
关于ES6箭头函数中的this问题
2018/02/27 Javascript
jQuery使用each遍历循环的方法
2018/09/19 jQuery
微信小程序拖拽排序列表的示例代码
2020/07/08 Javascript
Ubuntu 16.04 LTS中源码安装Python 3.6.0的方法教程
2016/12/27 Python
基于Django用户认证系统详解
2018/02/21 Python
Python实现合并excel表格的方法分析
2019/04/13 Python
PyQt5重写QComboBox的鼠标点击事件方法
2019/06/25 Python
python中while和for的区别总结
2019/06/28 Python
python 用户交互输入input的4种用法详解
2019/09/24 Python
python入门之基础语法学习笔记
2020/02/08 Python
PyInstaller运行原理及常用操作详解
2020/06/13 Python
PyQt5 QDockWidget控件应用详解
2020/08/12 Python
python 代码运行时间获取方式详解
2020/09/18 Python
如何用Python 实现全连接神经网络(Multi-layer Perceptron)
2020/10/15 Python
法律专业应届本科毕业生求职信
2013/10/25 职场文书
总经理助理工作职责
2014/02/06 职场文书
《争吵》教学反思
2014/02/15 职场文书
大学新生入学教育方案
2014/05/16 职场文书
教师求职自荐书
2014/06/14 职场文书
社区活动总结
2015/02/04 职场文书
2015年小学体育教师工作总结
2015/10/23 职场文书
Java异常体系非正常停止和分类
2022/06/14 Java/Android