1

我的 zend 表单生成以下代码:

<dt id="register_username-label">
<label for="register_username" class="required">Membername*</label>
</dt>
<dd id="register_username-element">
<input type="text" name="register_username" id="register_username" value="" />
</dd>

但在某些情况下(在单独的装饰器中处理)我需要在输入字段旁边添加更多的 html(也在 dd 标记中)。我有一个 Zend_Form_Element_Text 的实例,我可以添加更多装饰器,但我不知道如何完成:(

解决方案应如下所示:

<dt id="register_username-label">
<label for="register_username" class="required">Membername*</label>
</dt>
<dd id="register_username-element">
<input type="text" name="register_username" id="register_username" value="" />
<div class="validate"><div class="validate-check"></div></div>
</dd>
4

1 回答 1

1

您可以将装饰器添加到表单文件中的表单元素,如下所示

$form->addElement(
    'text',
    'register_username',
    array(
        'required' => false,
        'decorators' => array(
            array(
                'HtmlTag', array(
                    'tag'  => 'div',
                    'class' => 'validate'
                )
            )
        )
    )
);

还有更多我想与您分享一个有趣的链接,以了解 zend 表单的基本工作原理。

如果我能帮助你更多,请告诉我。

于 2013-05-15T11:13:37.683 回答