是否可以禁用 a 中的单个选项Zend_Form_Element_Radio
?也就是说,我想添加disabled="disabled"
到某些输入标签。
Zend 框架是否包含此功能?还是有另一种方法可以做到这一点?
是否可以禁用 a 中的单个选项Zend_Form_Element_Radio
?也就是说,我想添加disabled="disabled"
到某些输入标签。
Zend 框架是否包含此功能?还是有另一种方法可以做到这一点?
是的,有可能:
$element->setMultiOptions(array (
'songs' => 'songs',
'lyrics' => 'lyrics',
'artists' => 'artists'
));
$element->setAttrib('disable', array('lyrics', 'songs'));
它在选项键上效果最好。这是一个禁用除当前活动选项之外的所有选项的功能:
/**
* This function disables all options of the given selectElement, except for the active one
* @param \Zend_Form_Element_Select $selectElement
* @throws \Zend_Form_Exception
*/
private function disableAllOtherOptions(\Zend_Form_Element_Select $selectElement)
{
$theOneAndOnlyActiveValue = $selectElement->getValue();
$optionsToDisable = [];
foreach ($selectElement->options as $key => $option) {
if ($key <> $theOneAndOnlyActiveValue) {
$optionsToDisable[] = $key;
}
}
$selectElement->setAttrib('disable', $optionsToDisable);
}