0

Zend_From を含むフォームがあり、私のフォームはデフォルトで DL、DT、および DD タグでラップされていますが、それで問題ありません!

* <-- この記号を必須フィールドに追加する必要があります。最初に、この記号を各フォーム要素に明示的に追加することにしましたが、HTML タグを含めることができなかったため、たとえば<label>My Form Label:<span> *</span></label>* <-- この赤の色の記号を作成できるようになりました。

今、私は別の解決策を見つけました:

$elementDecorators = array(
            'ViewHelper',
            array('Label', array('tag' => 'span', 'escape' => false, 'requiredSuffix' => '<span class="required">* </span>'))
        );

そして各フォームについて:

$myElement->setDecorators($elementDecorators);  

そして、別のアプローチを試しました:

$myElement->getDecorator('label')
          ->setOptions(array('requiredSuffix'=> ' <span class="required">*</span> ', 'escape'=> false));

問題は、これらのコードをフォーム要素に適用した後、DL、DT、DD ラッパーが失われることです。そしてひどいように見えます。

DL を破壊せずに Decorator をラベルに追加する方法を教えてください。

4

1 に答える 1

2

CSSでこれを行うのは非常に簡単だと思います。

dt label.required:before {
    content: "* ";
    color: #ff0000;
}
于 2013-03-30T07:14:36.977 に答える