在zend框架2的视图文件中使用表单元素合并另一个类值?

时间:2013-05-28 06:14:38

标签: zend-framework2 zend-form

在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');

但它只显示错误,我所需的类值已经消失。什么是我还没有找到的合适解决方案。

1 个答案:

答案 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>