0

我目前有以下代码来生成表单元素(文本框):

$this->addElement('text', 'username', array(
        'label' => 'Username',
        //'multiOptions' => $this->getOptions(),
        'filters' => array(
            'StringTrim',
        ),
        'validators' => array(
            array('StringLength', 
                false, 
                array(0, 50)),
        ),
        'decorators' => array(
            array('ViewHelper'), 
            array('Label', array(
                'tag' => 'label',
                'placement' => 'prepend',
                )
            ),
            array('HtmlTag', array(
                'tag' => 'input',
                )
            ),
        ),
    ));

这会在 HTML 中输出以下内容:

<dt id="username-label"><label for="username" class="optional">Username</label></dt>
<dd id="username-element">
<input type="text" name="username" id="username" value="" class="input"></dd>

但是,我希望它输出这个:

<dt id="username-label"><label for="username" class="**label**">Username</label></dt>
<dd id="username-element">
<input type="text" name="username" id="username" value="" class="input"></dd>

为什么即使我告诉它在装饰器定义中使用标签类,标签也不采用标签类?我在这里做错了吗?

谢谢!

4

1 回答 1

0

渲染元素标签的代码

$this->form->name->renderLabel() ;

于 2013-02-13T08:42:50.353 回答