Yii2活动表格
<?= $form->field($model, 'pid')->dropDownList([1=>1,2=>2])->hint('上级分类') ?>
我想禁用选项2 =&gt; 2。
有办法吗?
答案 0 :(得分:3)
您可以使用“选项”键为下拉列表中的所有项添加属性。假设您要禁用第二项。
<?= $form->field($model, 'pid')->dropDownList([1 => 1, 2 => 2], ['options' => [2 => ['disabled' => true]]])->hint('上级分类') ?>
在文档中: http://www.yiiframework.com/doc-2.0/yii-helpers-basehtml.html#activeDropDownList()-detail
答案 1 :(得分:2)
ActiveField dropDownlist()明确调用BaseHtml activeDropDownList():
从文档到ActiveField
dropDownList()
:
标签选项的名称 - 值对。
有关可用选项的列表,请参阅
$options
参数yii\helpers\Html::activeDropDownList()
。
从文档到BaseHtml
activeDropDownList()
:
options
:array,select选项标签的属性。阵列 键必须是有效的选项值,并且数组值是额外的 相应选项标签的属性。例如,[ 'value1' => ['disabled' => true], 'value2' => ['label' => 'value 2'], ];
所以传递这些选项:
[
2 => ['disabled' => true],
],
作为dropDownList()
的第二个参数。
答案 2 :(得分:2)
这肯定会有效:
<?= $form->field($model, 'pid')->dropDownList([1=>1,2=>2], ['options'=>['2'=>['disabled'=>true]]]) ?>
答案 3 :(得分:0)
试试这个:
$disableDataArr['1'] = ['disabled' => true];
dropDownList( $dataArr, ['options'=> $disableDataArr ])