只读属性不适用于选择框。这是我的形式代码:
array(
'type' => 'Select',
'name' => 'role',
'attributes' => array(
'id' => 'role',
'error_msg' => 'Select User Role',
),
'options' => array(
'label' => 'Role'
),
'validation' => array(
'required'=>false,
'filters'=> array(
array('name'=>'StripTags'),
array('name'=>'StringTrim')
),
'validators'=>array(
array(
'name'=>'StringLength',
'options'=>array(
'encoding'=>'UTF-8',
'min'=>1,
'max'=>250
)
)
)
)
),
控制器代码:
$form->get('role')->setAttribute('readonly', 'readonly');
在我的控制器中,我在selectbox上应用了readonly属性,但未应用readonly属性,我如何应用readonly属性?
选择不具有只读属性。这是对w3c的选择描述
您可以做的就是禁用选择并添加一个隐藏字段(如果您希望传递默认值)
例子:
$form->get('field_name')->setAttribute('disabled', 'disabled');
或使用工厂方法:
$this->add(array(
'name' => 'field_name',
'type' => 'Zend\Form\Element\Select',
'options' => array(
'label' => 'Type',
'value_options' => array(
'val1' => 'name1',
'valN' => 'nameN'
),
),
'attributes' => array(
'disabled' => 'disabled',
),
));
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句