yii2的下拉框dropDownList使用方法

dropDownList很多人使用起来没法加默认值或者自动选中,一下是个人总结的效果,方便以后使用

一、使用Html助手类

echo Html::dropDownList('cat_pid', null, \common\models\CategoryModel::find()
            ->select(['cat_title','cat_id'])
            ->where(['cat_status'=>1,'cat_flag'=>$flag])
            ->orderBy('cat_sort')
            ->indexBy('cat_id')
            ->column(),
            [
                'options' => ['5' => ['selected' => true]],
                'prompt' =>['text'=>'顶级栏目', 'options'=>['value'=>0]],
                'style'=>'width:200px',
            ]);

        打印效果代码:

<select name="cat_pid" style="width:200px">
<option value="0">顶级栏目</option>
<option value="2">门店栏目</option>
<option value="4">杭州</option>
<option value="14">uuu</option>
<option value="16">uuu1</option>
<option value="5" selected>浦东新区</option>
<option value="3">上海</option>
<option value="17">u</option>
<option value="6">长宁区</option>
<option value="18">uk</option>
<option value="7">闸北区</option>
<option value="15">uuu1</option>
<option value="13">uuu</option>
</select> 

二、使用ActiveForm小部件

        <?= $form->field($model,'cat_pid')
            ->dropDownList(\common\models\CategoryModel::find()
                ->select(['cat_title','cat_id'])
                ->where(['cat_status'=>1,'cat_flag'=>$flag])
                ->orderBy('cat_sort')
                ->indexBy('cat_id')
                ->column(),
                [
                   'value' => 5,
                   'prompt' =>['text'=>'顶级栏目', 'options'=>['value'=>0]],
                ]);
        ?>

       打印效果效果

<div class="form-group field-categorymodel-cat_pid required">
<label class="control-label" for="categorymodel-cat_pid">上一级类别</label>
<select id="categorymodel-cat_pid" class="form-control" name="CategoryModel[cat_pid]" value="5" aria-required="true">
<option value="0">顶级栏目</option>
<option value="2">门店栏目</option>
<option value="4">杭州</option>
<option value="14">uuu</option>
<option value="16">uuu1</option>
<option value="5" selected>浦东新区</option>
<option value="3">上海</option>
<option value="17">u</option>
<option value="6">长宁区</option>
<option value="18">uk</option>
<option value="7">闸北区</option>
<option value="15">uuu1</option>
<option value="13">uuu</option>
</select>

<div class="help-block"></div>
</div>
展开阅读全文

没有更多推荐了,返回首页