我有一个类似的multiheckbox元素:
$element = new Zend_Form_Element_MultiCheckbox('infos', array('disableLoadDefaultDecorators' => true));
$element->addDecorator('ViewHelper')
->setRequired(true)
->addMultiOption('value1', 'BLABLABLA')
->addMultiOption('value2', 'BLABLABLA2')
->addValidator('NotEmpty', true);
$element->getValidator('NotEmpty')->setMessage('Pelo menos uma informação é necessária');
$this->addElement($element);
当我渲染一个multiheckbox元素时,它看起来像是:
<p>
<label for="infos-value1">
<input type="checkbox" name="infos[]" id="infos-value1" value="value1">BLABLABLA
</label><br>
<label for="infos-value2">
<input type="checkbox" name="infos[]" id="infos-value2" value="value2">BLABLABLA2
</label><br>
</p>
我只想添加一个属性,比方说,第一个输入,所以第一个输入就像:
<input type="checkbox" name="infos[]" id="infos-value1" value="value1" disabled>BLABLABLA
</label><br>
如何将“禁用”属性添加到我的两个输入之一?
答案 0 :(得分:2)
只需将选项的索引传递给禁用,如下所示:
$element->setOptions(array('disable' => array('value1', 'value2')));
不确定这在任何地方都有很好的记录。我希望在ZF 2.0中看到多选的一些改进。目前他们确实有其局限性。具体设置各个选项的类或样式属性。我不得不扩展/添加备用元素类并查看帮助程序以解决过去的一些问题。如果必须的话,这很容易做到。