在Zend_Form_Element_Multicheckbox中禁用转义

时间:2009-08-29 02:08:08

标签: zend-framework zend-decorators

我正在使用Multicheckbox元素并尝试弄清楚如何在FormMulticheckbox助手中禁用“escape”。我已经设法将一个转义参数发送到“描述”帮助器,并且工作正常(请参阅下面的“escape”=> false):

$this->setDecorators(array(
    "ViewHelper",
    "Errors",
    array(array("internal" => "HtmlTag"), array(
       "tag"   => "div", 
       "class" =>"multi-internal",
    )),
    "LabelWithHelp",
    array("Description", array(
        "class"  => "ui-corner-all ui-state-highlight help",
        "escape" => false,
        "tag"    => "div",
    )),
    array(array("element" => "HtmlTag"), array(
        "tag"   => "div", 
        "class" =>"multi",
    )),
));

但是我无法弄清楚要添加类似内容的装饰器或元素来从{strong} Zend_View_Helper_FormRadioZend_View_Helper_FormMultiCheckbox延伸到)上的标签中删除转义输出第138行:

if ($escape) {
    $opt_label = $this->view->escape($opt_label);
}

它正在检查是否已启用转义,因此必须在某处设置。只是不确定把它放在哪里:/

谢谢!

2 个答案:

答案 0 :(得分:7)

啊,拍。弄清楚了。它应该应用于元素,而不是装饰器:

$this->setAttrib("escape", false);

答案 1 :(得分:4)

你试过了吗?

$this->setAttrib( 'escape', false );