Html Zend表单标签中的下标或上标文本

Html Zend表单标签中的下标或上标文本,html,zend-framework,label,zend-form,Html,Zend Framework,Label,Zend Form,我想在Zend_Form_元素的标签中包含下标文本,但它似乎不起作用: $zend_form_element->setLabel('Label <sub>x</sub>'); $zend_form_元素->设置标签(“标签x”); 我可以做些什么来让它正确输出,而不必在查看页面上手动编写表单?谢谢你的帮助 戴夫试试: $zend_form_element->setAttribs( array( 'escape' => false ) )

我想在Zend_Form_元素的标签中包含下标文本,但它似乎不起作用:

 $zend_form_element->setLabel('Label <sub>x</sub>');
$zend_form_元素->设置标签(“标签x”);
我可以做些什么来让它正确输出,而不必在查看页面上手动编写表单?谢谢你的帮助

戴夫

试试:

$zend_form_element->setAttribs( array( 'escape' => false ) )
                  ->setLabel( 'Label <sub>x</sub>' );
$zend\u form\u元素->setAttribs(数组('escape'=>false))
->setLabel('Label x');
或单数形式:

$zend_form_element->setAttrib( 'escape', false )
                  ->setLabel( 'Label <sub>x</sub>' );
$zend\u form\u元素->setAttrib('escape',false)
->setLabel('Label x');

以下是正确的方法:

$zend_form_element->addDecorator('Label', аrray('escape'=>false));

from:

我认为最好的方法是从元素中获取实际的装饰器,然后设置转义选项,而不是添加新的装饰器:

$zend_form_element->getDecorator('Label')->setOption('escape',false);

根据@fireeyedboy的回答,您还可以直接以Zend_形式执行以下操作:

$this->addElement(
'radio',
'name',
array(
    /* more settings */
    'attribs'   => array(
        'escape' => FALSE
    )
));

您也可以通过以下方式执行此操作:

$radioElement = new Zend_Form_Element_Checkbox('formelement_0');
$radioElement->setLabel('Do you accept the <a href="#">Terms &amp; Conditions</a>?');
$radioElement->getDecorator('Label')->setOption('escape', false);
$radioElement=new Zend_Form_Element_复选框('formelement_0');
$radioElement->setLabel('您接受吗?');
$radioElement->getDecorator('Label')->setOption('escape',false);

这很接近,但显然,您必须在表单元素的实际装饰器上设置'escape'=>false:$zend_form_元素->addDecorator('Label',аrray('escape'=>false));这对我不管用。没有一个答案对我有用。我为其设置标签的文本总是转义的。我的元素代码是这样的:啊,发现了$稍后调用了此->setElementDecorators(),并覆盖了我的所有更改。