您好,登录后才能下订单哦!
本篇文章为大家展示了如何在Yii2框架中使用dropDownList下拉菜单,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
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;']);
上述内容就是如何在Yii2框架中使用dropDownList下拉菜单,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。