首頁 >後端開發 >php教程 >Yii2框架dropDownList下拉式選單用法實例分析_php實例

Yii2框架dropDownList下拉式選單用法實例分析_php實例

WBOY
WBOY原創
2016-08-04 08:56:581129瀏覽

本文實例講述了Yii2框架dropDownList下拉選單用法。分享給大家參考,具體如下:

dropDownList是yii框架中一個自帶的下拉功能了解,我們可以直接使用dropDownList來實現html的select選單,下面一起來看看。

Yii2.0 預設的 dropdownlist 的使用方法.

複製程式碼 程式碼如下:
field($model, 'name[]')->dropDownList(['a' => 'Item A', 'b' => 'Item B', 'c' => 'Item C']); ?>

在yii2中加放請選擇的下拉式選單

複製程式碼 程式碼如下:
field($model, 'name[]')->dropDownList($listData, ['prompt'=>'Select...' ]);>

DropDownList 在模型中使用

<&#63;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...']);
&#63;>

下拉選單的預設值設定我們使用 prompt 關鍵字

實例:

複製代碼 代碼如下:
$form->field($searchmodel, 'moneytype')->dropDownList($soucetype, ['prompt' => '請選擇金額來源')])

好的 下拉選單的預設值設定就是這樣簡單,下面我們在說說帶有插件的文字方塊預設值是如何設定的

我現在就拿這個表單後面的兩個使用了時間插件的文字域為例,在這裡 prompt 關鍵字就不行了,我們要使用 placeholder 關鍵字

複製程式碼 程式碼如下:
$form->field($searchmodel, 'startdate')->widget(DatePicker::className(),['clientOptions' => ['dateFormat' => 'yyyFormat' => ' -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、yiihelpersHtml 類別為我們提供了下拉列表的實作方法 activeDropDownList 方法



複製程式碼 程式碼如下:Html::activeDropDownList($model, 'username', ArrayHelper::map($data,'id', 'customer_name'), ['style' => 'b: 1px solid red;']);
我沒寫 php 標籤,相信寫過新浪博客的程式猿都知道,寫了 php 標籤 整個程式碼都被過濾了,所以複製程式碼,自己加上標籤

參數和第一種方法的參數意義相同,不做解釋。

更多關於Yii相關內容有興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結》、《php優秀開發框架總結》、《smarty模板入門基礎教程》、《php物件導向程式設計入門教程》、《php字串(string)用法總結》、《php+mysql資料庫操作入門教學》及《php常見資料庫操作技巧總表》

希望本文所述對大家以Yii架構為基礎的PHP程式設計有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn