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 相关文章推荐
解析PayPal支付接口的PHP开发方式
Nov 28 PHP
PHP pathinfo()获得文件的路径、名称等信息说明
Sep 13 PHP
PHP 常用的header头部定义汇总
Jun 19 PHP
在PHP程序中使用Rust扩展的方法
Jul 03 PHP
使用图灵api创建微信聊天机器人
Jul 23 PHP
yum命令安装php7和相关扩展
Jul 04 PHP
php字符串操作针对负值的判断分析
Jul 28 PHP
PHP 用session与gd库实现简单验证码生成与验证的类方法
Nov 15 PHP
PHP编程实现计算抽奖概率算法完整实例
Aug 09 PHP
阿里云Win2016安装Apache和PHP环境图文教程
Mar 11 PHP
php实现网页上一页下一页翻页过程详解
Jun 28 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
Nov 23 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开源建站平台小结
2010/04/22 PHP
PHP无刷新上传文件实现代码
2011/09/19 PHP
php array_filter除去数组中的空字符元素
2020/06/21 PHP
php判断输入是否是纯数字,英文,汉字的方法
2015/03/05 PHP
PHP模板引擎Smarty内建函数详解
2016/04/11 PHP
javaScript Array(数组)相关方法简述
2009/07/25 Javascript
jquery 新手学习常见问题解决方法
2010/04/18 Javascript
jquery中通过父级查找进行定位示例
2013/06/28 Javascript
Jquery中扩展方法extend使用技巧
2014/08/24 Javascript
javascript函数式编程程序员的工具集
2015/10/11 Javascript
Google 地图API资料整理及详细介绍
2016/08/06 Javascript
详解打造 Vue.js 可复用组件
2017/03/24 Javascript
react-router v4如何使用history控制路由跳转详解
2018/01/09 Javascript
使用webpack打包后的vue项目如何正确运行(express)
2018/10/26 Javascript
说说如何使用Vuex进行状态管理(小结)
2019/04/14 Javascript
Vue的路由及路由钩子函数的实现
2019/07/02 Javascript
Vue.set 全局操作简单示例
2019/09/19 Javascript
JavaScript实现单图片上传并预览功能
2019/09/30 Javascript
Echarts地图添加引导线效果(labelLine)
2019/09/30 Javascript
十分钟教你上手ES2020新特性
2020/02/12 Javascript
浅谈Vue3.0新版API之composition-api入坑指南
2020/04/30 Javascript
基于leaflet.js实现修改地图主题样式的流程分析
2020/05/15 Javascript
python的socket编程入门
2018/01/29 Python
解决项目pycharm能运行,在终端却无法运行的问题
2019/01/19 Python
详解用Python练习画个美队盾牌
2019/03/23 Python
python issubclass 和 isinstance函数
2019/07/25 Python
Python3查找列表中重复元素的个数的3种方法详解
2020/02/13 Python
使用pygame实现垃圾分类小游戏功能(已获校级二等奖)
2020/07/23 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
HTML5 贪吃蛇游戏实现思路及源代码
2013/09/03 HTML / CSS
比利时的在线灯具店:Lampen24.be
2019/07/01 全球购物
Lungolivigno Fashion官网:高级时装在线购物
2020/10/17 全球购物
军训感想500字
2014/02/20 职场文书
校园环保建议书
2014/05/14 职场文书
节约用水演讲稿
2014/05/21 职场文书
食堂采购员岗位职责
2015/04/03 职场文书