[英]zf2 form disable select option(s)
是否可以禁用选择元素中的选项?
我有一个带有 select 元素的表单,默认情况下有很多可用选项。 在表单创建过程中,根据从数据库中检索到的信息,我想禁用某些选项。
一些研究提出了$form->get('selectElement')->setAttribute("disabled", array(0, 1, 2));
...这应该禁用前 3 个选项,但不幸的是没有。
您必须使用setAttribute()
方法来设置select
元素的属性,而不是它的选项。 为此,您应该使用setValueOptions()
:
$myOptions = $form->get('selectElement')->getValueOptions();
foreach ([0, 1, 2] as $value) {
$myOptions [$value]['disabled'] = true ;
}
$form->get('selectElement')->setValueOptions($myOptions);
$myOptions
必须是一个选项数组:
[
[
'label' => 'My first option',
'disabled' => false,
'value' => 1
],
[
'label' => '2nd option',
'disabled' => false,
'value' => 2
],
[
'label' => '3rd option disabled',
'disabled' => true,
'value' => 3
],
]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.