hideout-lastation.com
Paradis Pour Les Concepteurs Et Les Développeurs


Comment créer un Datalist qui est instantanément consultable

Les listes déroulantes sont un bon moyen de fournir des options pour un champ de saisie, en particulier lorsque la liste des options disponibles est longue. Un utilisateur peut choisir l'option qu'il souhaite en tapant dans le champ ou rechercher parmi les options qui correspondent à ce qu'il recherche. Pouvoir rechercher parmi les options, cependant, est la solution idéale.

Ce comportement peut être atteint avec le Élément HTML qui affiche des suggestions d'entrée pour différents contrôles, tels que marque. toutefois affiche uniquement les options disponibles lorsque l'utilisateur a déjà tapé quelque chose dans le champ de saisie.

Nous pouvons rendre un champ de saisie plus utilisable si nous permettons aux utilisateurs d' accéder à la liste complète des options à tout moment au cours du processus de saisie.

Dans ce post, nous allons voir comment créer une liste déroulante qui est consultable à tout moment en utilisant le tag est le même que l' id de la tag - c'est ainsi que nous les lions les uns aux autres.

2. Rendre le Datalist visible

Par défaut, le L'élément HTML est caché . Nous ne pouvons le voir que lorsque nous commençons à taper une entrée dans le champ auquel le datalist est attaché.

Cependant, il existe un moyen de "forcer" le contenu de la datalist (c'est-à-dire toutes ses options) à apparaître sur la page Web . Il suffit de lui donner une valeur de propriété d' display autre que none, par exemple display:block; .

 datalist {display: block; } 

Les options affichées ne sont pas encore sélectionnables à ce stade, le navigateur ne restitue que les options qu'il trouve dans le datalist.

Comme mentionné ci-dessus, en raison du comportement intégré de la élément, une partie des options apparaissent déjà et sont sélectionnables, mais seulement lorsque l'utilisateur commence à saisir une chaîne à laquelle le navigateur peut trouver une option correspondante .

Nous devons également trouver un mécanisme permettant de sélectionner toutes les options (sur la capture d'écran ci-dessus affichée dans le menu déroulant) à tout autre endroit du processus de saisie - lorsque les utilisateurs veulent vérifier les options avant de taper quoi que ce soit ou J'ai déjà pris quelque chose dans le champ de saisie.

3. Amenez le Élément HTML .

Nous allons choisir la deuxième méthode, car elle est plus simple, et elle peut être utilisée comme mécanisme de secours dans les navigateurs qui ne supportent pas le élément. Lorsqu'un navigateur ne peut pas afficher et afficher le datalist, il rend le Balise HTML, le code ressemble à ci-dessous:

Pour voir toutes les options de select dans la liste déroulante, nous devons utiliser les attributs multiple pour afficher plus d'une option, et la size pour le nombre d'options que nous voulons afficher.

 tag, de sorte que lorsque l'utilisateur sélectionne une option dans la liste déroulante, sa valeur sera affichée à l'intérieur du  champ aussi bien.

 / * lorsque l'utilisateur sélectionne une option de DDL, écrivez-la dans le champ de texte * / select.addEventListener ('change', fill_input); function fill_input () {input.value = options [this.selectedIndex] .value; hide_select (); } 
Désavantages

Le principal inconvénient de cette technique est l' absence d'un moyen direct de élément avec CSS (l'apparition de la et