1

私はMulticheckbox要素を操作していて、FormMulticheckboxヘルパーで「エスケープ」を無効にする方法を見つけようとしています。エスケープパラメータを「description」ヘルパーに送信できましたが、これは正常に機能します(以下の「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",
    )),
));

しかし、 138行目Zend_View_Helper_FormRadioでレンダリングされた(Zend_View_Helper_FormMultiCheckboxから拡張された)ラベルからエスケープされた出力を削除するために、そのようなものを追加するデコレータまたは要素を理解することはできません:

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

エスケープがオンになっているかどうかをチェックしているので、どこかに設定が必要です。どこに置くかわからない:/

ありがとう!

4

2 に答える 2

7

あ、撃て。理解した。デコレータではなく、要素に適用されるはずです:

$this->setAttrib("escape", false);
于 2009-08-29T02:22:25.483 に答える
4

やってみました:

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

?

于 2009-08-29T02:26:37.863 に答える