0
我可以使用ArrayHelper :: map()在Yii2中创建基于模型的下拉列表。但我不确定在下拉列表中添加新选择选项的过程。娄我已经加入我的代码 -如何在基于Yii2的下拉列表中添加自定义选项?
$book_list = Books::find()
->where(['Status' => 1])
->orderBy('BookName')
->all();
$listBook=ArrayHelper::map($book_list,'BookName','BookName');
<?= $form->field($model, 'BookName')->dropDownList($listBook, [
'prompt' => 'Select'],
['label'=>'']
)?>
而且它产生下拉列表像以下各项
<option value="">Select</option>
<option value="Biology">Biology</option>
<option value="Mathematics">Mathematics</option>
<option value="Physics">Physics</option>
我想添加一个新的名为“其他”选项,在下拉列表的末尾。我使用的是BookName的顺序,所以“OTHER”将不在排序中。它将始终显示在下拉列表的底部/顶部。
<option value="">Select</option>
<option value="Biology">Biology</option>
<option value="Mathematics">Mathematics</option>
<option value="Physics">Physics</option>
<option value="Other">Other</option>
我该如何做到这一点?
它的工作原理或不? – 2015-04-05 11:57:31
它没有工作,但我已经管理,使用SQL查询。我使用了以下查询 - SELECT BookName FROM books ORDER BY BookName ='Other'ASC,BookName ASC; – 2015-04-10 12:30:42
如果我使用上面的方法,那么它不会在下拉列表末尾显示值'Other'。它只是在最后显示一个空的选项。 – 2015-04-15 07:29:02