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开源XNA 聚合程序发布 下载
Jul 13 PHP
PHP中10个不常见却非常有用的函数
Mar 21 PHP
hessian 在PHP中的使用介绍
Dec 13 PHP
一些PHP Coding Tips(php小技巧)[2011/04/02最后更新]
May 02 PHP
dedecms中使用php语句指南
Nov 13 PHP
php校验表单检测字段是否为空的方法
Mar 20 PHP
PHP+MYSQL中文乱码问题
Jul 01 PHP
php版微信数据统计接口用法示例
Oct 12 PHP
php封装的单文件(图片)上传类完整实例
Oct 18 PHP
php调用云片网接口发送短信的实现方法
Oct 25 PHP
PHP中number_format()函数的用法讲解
Apr 08 PHP
Yii框架视图、视图布局、视图数据块操作示例
Oct 14 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执行多个存储过程的方法【基于thinkPHP】
2016/11/08 PHP
基于JQuery的Select选择框的华丽变身
2011/08/23 Javascript
jquery获取焦点和失去焦点事件代码
2013/04/21 Javascript
js取两个数组的交集|差集|并集|补集|去重示例代码
2013/08/07 Javascript
jquery.ajax之beforeSend方法使用介绍
2014/12/08 Javascript
js实现点击切换TAB标签实例
2015/08/21 Javascript
如何动态加载外部Javascript文件
2015/12/02 Javascript
jQuery弹簧插件编写基础之“又见弹窗”
2015/12/11 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
2015/12/15 Javascript
更靠谱的H5横竖屏检测方法(js代码)
2016/09/13 Javascript
jQuery实现可拖拽的许愿墙效果【附demo源码下载】
2016/09/14 Javascript
jquery Easyui Datagrid实现批量操作(编辑,删除,添加)
2017/02/20 Javascript
JavaScript实现购物车基本功能
2017/07/21 Javascript
Vue自定义指令详解
2017/07/28 Javascript
vue项目中用cdn优化的方法
2018/01/03 Javascript
vue 设置路由的登录权限的方法
2018/07/03 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
2019/11/12 Javascript
JavaScript实现H5接金币功能(实例代码)
2021/02/22 Javascript
Python 流程控制实例代码
2009/09/25 Python
微信跳一跳python代码实现
2018/01/05 Python
python自动12306抢票软件实现代码
2018/02/24 Python
python写程序统计词频的方法
2019/07/29 Python
你还在@微信官方?聊聊Python生成你想要的微信头像
2019/09/25 Python
Python3.7 pyodbc完美配置访问access数据库
2019/10/03 Python
python 视频逐帧保存为图片的完整实例
2019/12/10 Python
Python面向对象之私有属性和私有方法应用案例分析
2019/12/31 Python
Django+Celery实现动态配置定时任务的方法示例
2020/05/26 Python
python中数字是否为可变类型
2020/07/08 Python
matplotlib之多边形选区(PolygonSelector)的使用
2021/02/24 Python
OnePlus加拿大官网:中国国际化手机品牌
2020/10/13 全球购物
主题党日活动总结
2014/07/08 职场文书
同学会邀请函模板
2015/01/30 职场文书
村级干部党员公开承诺事项
2015/05/04 职场文书
python基础之爬虫入门
2021/05/10 Python
MySQL 1130异常,无法远程登录解决方案详解
2021/08/23 MySQL
springboot应用服务启动事件的监听实现
2022/04/06 Java/Android