Update Ich konnte das schaffen, indem ich einen benutzerdefinierten Label Dekorator erstellte, der Zend/Form/Decorator/Label.php erweiterte. Ich habe eine setTagClass() -Methode hinzugefügt und die Rendermethode überschrieben, um das umschließende Tag mit der gewünschten Klasse zu erstellen. Es mag einen eleganteren Weg geben, aber das scheint zu funktionieren.Zend Form - Setze die Klasse auf ein Label dt
Ich bin auf der Suche nach Informationen zum Festlegen der Klasse auf einem dt-Element einer Beschriftung mit einem Dekorator. Die dritte Codezeile setzt die Klasse auf dem Etikett und umschließt das Etikett in einem dt-Tag. Ich möchte wissen, wie ich die Klasse auf dem dt-Tag festlegen kann.
$txtLangPrefOther = $this->createElement('text','langPrefOther');
$txtLangPrefOther->setLabel('Language Preference Other:'));
$txtLangPrefOther->getDecorator('Label')->setOptions(array('tag' => 'dt', 'class' => 'other'));
Dies erzeugt eine Ausgabe wie
<dt id="langPrefOther-label">
<label for="langPrefOther" class="other">Language Preference Other:</label>
</dt>
<dd id="langPrefOther-element">
<input type="text" id="langPrefOther" name="langPrefOther" ">
</dd>
ich es wie
<dt id="langPrefOther-label" class="other">
<label for="langPrefOther">Language Preference Other:</label>
</dt>
<dd id="langPrefOther-element">
<input type="text" id="langPrefOther" name="langPrefOther" ">
</dd>
Ich möchte nur bestimmte dt ist die ‚andere‘ Klasse Set haben, nicht alle von ihnen. – Chris
So können Sie jquery verwenden. $ ('# idOfFormElement'). Engster ('dt'). AddClass ('Klassenname'); – cnkt
Oder Sie können $ form-> element-> setDecorator ('HtmlTag', Array ('tag' => 'dl', Klasse => 'theclass')) –