Actualizar Pude hacer que esto funcionara al crear un decorador de etiquetas personalizado, que extendía Zend/Form/Decorator/Label.php. Agregué un método setTagClass() y sobreescribí el método de render para crear la etiqueta adjunta con la clase deseada. Puede haber una forma más elegante de hacerlo, pero parece que funciona.Zend Form - Establecer clase en un dt de etiqueta
Estoy buscando información sobre cómo configurar la clase en el elemento dt de una etiqueta usando un decorador. La tercera línea de código a continuación establece la clase en la etiqueta y la etiqueta en una etiqueta dt. Quiero saber cómo puedo configurar la clase en la etiqueta dt.
$txtLangPrefOther = $this->createElement('text','langPrefOther');
$txtLangPrefOther->setLabel('Language Preference Other:'));
$txtLangPrefOther->getDecorator('Label')->setOptions(array('tag' => 'dt', 'class' => 'other'));
Esto produce una salida como
<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>
quiero que se vea como
<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>
quiero solamente de ciertos dt tengan el 'otro' conjunto de clases, no todos ellos. – Chris
Entonces, puedes usar jquery. $ ('# idOfFormElement') más cercano ('dt'). AddClass ('className'); – cnkt
O puede hacer $ form-> element-> setDecorator ('HtmlTag', array ('tag' => 'dl', clase => 'la clase')) –