如何在所有选项列表的屏幕快照state_id=1
中添加额外的属性。
<?= $form->field($model, 'district_id')->dropDownList(ArrayHelper::map($Districts, 'id', 'name')) ?>
答案 0 :(得分:1)
您需要遍历$Districts
数组并将所有要添加到下拉列表的<option>
的属性相关联,我假设您的$Districts
数组具有如下内容< / p>
$Districts=[
1=>"North Andaman",
2=>"South Andaman"
3=>"Nicobar"
];
现在,您需要迭代该数组并将属性与每个选项相关联
foreach ($Districts as $id => $name) {
$optionAttributes[$id] = ['my-attr' => 'value'];
}
以上内容将为您显示
Array
(
[1] => Array
(
[my-attr] => value
)
[2] => Array
(
[my-attr] => value
)
[3] => Array
(
[my-attr] => value
)
)
现在,在创建下拉列表时,您应该将此数组传递给options
的{{1}}选项,请参见下文
dropdownList()
现在,如果您看到页面的来源,它将显示如下所示的下拉列表
echo $form->field($model, 'district_id')->dropDownList(
$Districts,
['options' => $optionAttributes]
);