J'essaie d'ajouter une classe CSS à une option Zend_Form_Element_Select, mais je n'arrive pas à trouver un moyen de le faire.Comment ajouter des classes CSS à l'option Zend_Form_Element_Select
La sortie souhaitée serait quelque chose comme ceci:
<select name="hey" id="hey">
<option value="value1" style="parent">label1</option>
<option value="value2" style="sibling">sublabel1</option>
<option value="value3" style="sibling">sublabel2</option>
<option value="value4" style="parent">label2</option>
<option value="value5" style="sibling">sublabel3</option>
<option value="value6" style="sibling">sublabel4</option>
</select>
Mais je deviens ceci:
<select name="hey" id="hey">
<option value="value1">label1</option>
<option value="value2">sublabel1</option>
<option value="value3">sublabel2</option>
<option value="value4">label2</option>
<option value="value5">sublabel3</option>
<option value="value6">sublabel4</option>
</select>
Je ne peux pas sembler passer un attribut de classe CSS à l'une des options dans l'élément select bien que je puisse styliser l'élément select itselft.
Mon code:
$sel = new Zend_Form_Element_Select('hey');
$sel->setRequired(true)->setLabel('Select an Option:');
$sel->addMultiOption('value1', 'label1', array('class' => 'parent'))
->addMultiOption('value2', 'sublabel1', array('class' => 'sibling')) (etc...);
Après avoir étudié un peu j'ai découvert que Element_Select ne dispose pas d'une méthode pour ajouter des styles CSS aux options dans la zone de sélection, seulement pour lui-même sélectionner.
Alors, comment puis-je les ajouter? Dois-je étendre le formulaire_element_select? Ou un décorateur personnalisé suffirait-il? Quelqu'un peut-il me donner un indice? Je suis déconcerté avec ça.
Merci d'avance!
qui est censé être 'class', pas' style', non? – Gordon
Je voudrais accomplir la même chose pour des éléments individuels dans un groupe MultiCheckbox. – Sonny
jeter un coup d'oeil: http://stackoverflow.com/questions/6397015/how-to-add-attributes-id-for-example-to-options-of-zend-form-element-select –