Yii2框架dropDownList下拉菜單用法實(shí)例分析

字號(hào):


    本文實(shí)例講述了Yii2框架dropDownList下拉菜單用法。分享給大家供大家參考,具體如下:
    dropDownList是yii框架中一個(gè)自帶的下拉功能了解,我們可以直接使用dropDownList來實(shí)現(xiàn)html的select菜單,下面一起來看看。
    Yii2.0 默認(rèn)的 dropdownlist 的使用方法.
    代碼如下:
    <?php echo $form->field($model, 'name[]')->dropDownList(['a' => 'Item A', 'b' => 'Item B', 'c' => 'Item C']); ?>
    在yii2中加放請(qǐng)選擇的下拉菜單
    代碼如下:
    <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...']);
    ?>
    下拉菜單的默認(rèn)值設(shè)置我們使用 prompt 關(guān)鍵字
    實(shí)例:
    代碼如下:
    $form->field($searchmodel, 'moneytype')->dropDownList($soucetype, ['prompt' => '請(qǐng)選擇金額來源')])
    好的 下拉菜單的默認(rèn)值設(shè)置就是這樣簡(jiǎn)單,下面我們?cè)谡f說帶有插件的文本框默認(rèn)值是如何設(shè)置的
    我現(xiàn)在就拿這個(gè)表單后面的兩個(gè)使用了時(shí)間插件的文本域?yàn)槔谶@里 prompt 關(guān)鍵字就不行了,我們要使用 placeholder 關(guān)鍵字
    代碼如下:
    $form->field($searchmodel, 'startdate')->widget(DatePicker::className(),['clientOptions' => ['dateFormat' => 'yy-mm-dd']])->textInput(['placeholder' => Yii::t('app', 'Start time')])
    ActiveForm 類的 dropDownList 方法(優(yōu)點(diǎn),默認(rèn)使用yii的樣式)
    1、在控制器的方法里面 ,我們需要拿到數(shù)據(jù),一定是 findAll() 或者是 all() 方法的數(shù)據(jù),實(shí)例如下:
    public function actionIndex()
    {
        $model = new UserModel();
        $data = Customer::find()->all();
        return $this->render('index', [
          'model' => $model,
          'data' => $data,
        ]);
    }
    在視圖頁(yè)面,我們使用 yii 的表單生成器。
    代碼如下:
    $form->field($model, 'username')->dropDownList(ArrayHelper::map($data,'id', 'customer_name'));
    2.1、dropDownList           --->     yii2.0  下拉列表的方法
    2.2、ArrayHelper::map()     --->     構(gòu)建一個(gè)(key => value) 的一維或多維數(shù)組
    2.3.1、 $data               --->     數(shù)據(jù)源
    2.3.2、 id                  --->     option 的 value 值
    2.3.3、 customer_name       --->     option 標(biāo)簽的 值
    Html 類的 activeDropDownList方法(優(yōu)點(diǎn),可以自定義任何樣式)
    1、和第一種方法的第一步一樣,拿到數(shù)據(jù)。不過多解釋了。
    2、\yii\helpers\Html 類為我們提供了下拉列表的實(shí)現(xiàn)方法 activeDropDownList 方法。
    代碼如下:
    Html::activeDropDownList($model, 'username', ArrayHelper::map($data,'id', 'customer_name'), ['style' => 'border:1px solid red;']);
    我沒寫 php 標(biāo)簽,相信寫過新浪博客的程序猿都知道,寫了 php 標(biāo)簽 整個(gè)代碼都被過濾了,所以復(fù)制代碼,自己加上標(biāo)簽
    參數(shù)和第一種方法的參數(shù)含義相同,不做解釋。
    希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助。