web-dev-qa-db-fra.com

Puis-je utiliser des balises HTML dans les options pour sélectionner des éléments?

Est-il possible que les options d'un élément de sélection HTML incluent des balises HTML?

Par exemple, étant donné le code suivant:

 <select>
    <option value="one"><b>one is bold</b></option>
    <option value="two">two has some <span style='color:red;'>red</span> text</option>
    <option value="three">three is just normal</option>
 </select>

Je voudrais que les options rendent réellement en HTML. Dans cette application, je peux jouer avec HTML, CSS, JavaScript (y compris jQuery). Et le code HTML lui-même est rendu via Django (Django.form.fields.select).

44
trubliphone

Non, tu ne peux pas faire ça. Les balises <option> Ne peuvent contenir aucune autre balise.

68
meagar

Non, mais ceci: Styling HTML Select peut vous aider et il y a beaucoup de détails et de votes ici:

Comment styliser un menu déroulant <select> avec CSS uniquement sans JavaScript?

5
Michael Durrant

Non tu ne peux pas.

Ce que vous feriez si vous vouliez utiliser ceci, c'est utiliser quelque chose comme une div et une position flottantes et l'afficher en utilisant Css pour ressembler à une sélection. Puis, en utilisant les clics javascipt, les utilisateurs peuvent sélectionner.

Quelque chose comme ça: Réinventer la liste déroulante

4
nunespascal

option tag n'autorise aucun enfant autre que text

Voici un violon que j'ai créé il y a quelques mois qui remplace un élément de sélection par une liste déroulante et met à jour l'élément de sélection pour chaque sélection effectuée. Il suffit de cacher select avec css http://jsfiddle.net/6zcRk/

L'utilisateur de ce fil l'a ensuite transformé en un plugin disponible sur github (voir lien dans le fil)

panneau déroulant personnalisé avec jQuery

1
charlietfl