Subscript or Superscript text within a Zend Form l

2019-05-07 04:15发布

问题:

I would like to include subscript text in a Zend_Form_Element's label, and it doesn't seem to be working:

 $zend_form_element->setLabel('Label <sub>x</sub>');

Is there anything I can do to get it to output properly without having to manually write the form on the view page? Thanks for the help,

Dave

回答1:

I would say that best way is to get actual decorator from element and then set escape option, not to add new decorator:

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


回答2:

Here is the right way to do it:

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

from: http://forums.zend.com/viewtopic.php?f=69&t=5706



回答3:

Try:

$zend_form_element->setAttribs( array( 'escape' => false ) )
                  ->setLabel( 'Label <sub>x</sub>' );

Or the singular:

$zend_form_element->setAttrib( 'escape', false )
                  ->setLabel( 'Label <sub>x</sub>' );


回答4:

You can also it it the following way:

$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);


回答5:

From @fireeyedboy's answer, you can also do the following directly in your Zend_Form:

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