在zf2表单中,我创建了一个像
这样的元素 $receivePerson = new Element\Select('receivePerson');
$receivePerson->setLabel('To')
->setAttribute('class', 'required');
不,我需要添加另一个类attr值,如视图文件中的错误。如果我添加错误类值 在表格中然后是我的所有代码片段。
$receivePerson = new Element\Select('receivePerson');
$receivePerson->setLabel('To')
->setAttribute('class', 'required error');
我使用此代码但未显示任何预期结果。
$element->setAttributes(array('class', 'error'));
之后,我改变了我的代码并像这样写了
$element->setAttribute('class', 'error');
但它只显示错误,我所需的类值已经消失。什么是我还没有找到的合适解决方案。
答案 0 :(得分:0)
您是否确保在对元素进行更改后以及在呈现表单之前调用prepare?
$form->prepare();
您不必使用Element对象来更改它,有一种更简单的方法可以使用简单的html html来写出您的表单:
myview.phtml
<li>
<?php $class = XXXX ? 'one' : 'two' ?>
<?php echo $form->get('receivePerson')->getLabel() ?>
<input class="<?php echo $class ?>" type="text"
name="<?php echo $form->get('receivePerson')->getName() ?>"
value="<?php echo $form->get('receivePerson')->getValue() ?>"
/>
</li>