您好,登錄后才能下訂單哦!
本篇文章為大家展示了如何在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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。