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()
return $this->render('index', [ |
在檢視頁面,我們使用 yii 的表單生成器。
程式碼如下 | 複製程式碼 |
$form->field($model, 'username')->dropDownList(ArrayHelper::map($data,'id', 'customer_name')); |
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 標籤 整個程式碼都被過濾了,所以複製程式碼,自己加上標籤
引數和第一種方法的引數含義相同,不做解釋。
Html 類的 dropDownList方法(優點,可以自定義任何樣式)
1、和第一種方法的第一步一樣,拿到資料。不過多解釋了。
2、\yii\helpers\Html 類為我們提供了下拉列表的實現方法 dropDownList方法
程式碼如下 | 複製程式碼 |
Html::dropDownList('username', null, ArrayHelper::map($data,'id', 'customer_name'), ['class' => 'dropdownlist']); |
我沒寫 php 標籤,相信寫過新浪部落格的程式猿都知道,寫了 php 標籤 整個程式碼都被過濾了,所以複製程式碼,自己加上標籤