43 votes

Saisir manuellement une valeur dans une liste HTML « Sélectionner » ?

Dans une application Windows Forms, une liste de sélection déroulante donne également à l'utilisateur la possibilité de saisir une autre valeur dans ce même champ (en supposant que le développeur a laissé cette option activée sur le contrôle.)

Comment y parvenir en HTML ? Il semble qu'il soit uniquement possible de sélectionner des valeurs dans la liste.

S'il n'est pas possible de le faire avec du HTML pur, existe-t-il un moyen de le faire avec Javascript ?

46voto

Pottsy Points 461

Cela peut être fait maintenant avec HTML5

Voir cet article ici Formulaire de sélection HTML avec option pour saisir une valeur personnalisée

 <input type="text" list="cars" />
<datalist id="cars">
  <option>Volvo</option>
  <option>Saab</option>
  <option>Mercedes</option>
  <option>Audi</option>
</datalist>

9voto

amorphic Points 8

J'ai été confronté au même problème de base : essayer de combiner les fonctionnalités d'une zone de texte et d'une zone de sélection qui sont fondamentalement différentes dans la spécification html.

La bonne nouvelle est que selectize.js fait exactement ceci :

Selectize est l'hybride d'une zone de texte et d'une zone. Il est basé sur jQuery et est utile pour le balisage, les listes de contacts, les sélecteurs de pays, etc.

7voto

stian.net Points 2038

La façon la plus simple de le faire est d'utiliser jQuery : jQuery UI combobox/autocomplete

3voto

Moo-Juice Points 22190

ExtJS a un contrôle ComboBox qui peut le faire (et une foule d'autres trucs sympas !!)

EDIT : Parcourez tous les contrôles, etc., ici : http://www.sencha.com/products/js/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X