5

是否可以使用 HtmlTag 装饰器将表单元素包装在一个 div 中并将整个块(标签、元素、错误等)包装在另一个 div 中?我想将 Twitter 的 Bootstrap 与 Zend_Form 一起使用,如下所示:

<div class="clearfix">
  <label for="xlInput">X-Large Input</label>
  <div class="input">
    <input class="xlarge" id="xlInput" name="xlInput" size="30" type="text" />
  </div>
</div>

有任何想法吗?

4

2 回答 2

8

试试这个(未经测试):

$element->setDecorators( array(
    'Errors',
    'ViewHelper',
    array( array( 'wrapperField' => 'HtmlTag' ), array( 'tag' => 'div', 'class' => 'input' ) ),
    array( 'Label', array( 'placement' => 'prepend' ) ),
    array( array( 'wrapperAll' => 'HtmlTag' ), array( 'tag' => 'div', 'class' => 'clearfix' ) ),
) );

编辑:标签错误;调整。

于 2011-08-28T16:07:40.290 回答
2

作为对 Ezequiel Muns 的回复,它在文档中的位置:http: //framework.zend.com/manual/1.7/en/zend.form.elements.html#zend.form.elements.decorators查找标注部分“注意:使用多个相同类型的装饰器。”

于 2012-07-12T16:09:14.127 回答