Formulaire:Listes de sélections Javascript

Un article de WikiTuto.

Jump to: navigation, search
  1. Coder le Javascript
  2. Navigateurs incompatibles
  3. Debugger
  4. Fichiers externes
  5. Orienté objet
  1. Déclaration et affectation
  2. String et nombre
  3. Vecteurs ou tableaux
    1. Grandeur d'un vecteur
    2. Vecteur en string
    3. Trier un vecteur
    4. Autres méthodes
  • Les Opérateurs
  1. Arithmétiques
  2. Relationnels
  3. Logiques
  4. Priorités
  5. Eval
  • Les Contrôles
  1. If - Else
  2. Switch case
  3. Boucle for
  4. Boucle while
  5. Boucle forever
  6. Boucle do-while
  7. Minuteries
  8. Intervalles
  9. Arrêt
  • Les Fonctions
  1. Déclarations
  2. Portée des variables
  3. Valeur de retour
  4. Appel via lien
  5. With
  1. Onclick - Ondblclick
  2. Boutons rollover
  3. Détection clavier
  4. Attribution de focus
  5. Chargement de page
  6. Onerror
  7. Supprimer erreurs
  8. Infos sur les erreurs
  • Les Objets
  1. Propriétés et méthodes
  2. This
  3. Créer un objet
  4. Créer une classe
  5. Voir propriétés objets
  6. Objets link et anchor
  7. Objet history
  8. Objet image
  • Les Fenêtres
  1. Barre d'état
  2. Modifier les couleurs
  3. Changer titre de page
  4. Afficher informations
  5. Ouvrir nouvelle fenêtre
  6. Communication fenêtres
  7. Imprimer une fenêtre
  8. Redimensionner fenêtre
  9. Déplacer / fermer
  10. Boîtes de messages
  • Les Strings
  1. Objet String
  2. Sous-chaînes
  3. Concaténation
  4. Formater
  5. Ancrages
  6. Longueur chaîne
  7. Modifier la casse
  8. Rechercher chaîne
  9. Remplacer texte
  10. Découper chaîne
  • Les Dates
  1. Objet Date
  2. Afficher heure et date locale
  3. Lire valeurs heure/date
  4. Régler valeurs heure/date
  5. Fuseaux horaires
  • Objet Math
  1. Propriétés
  2. Méthodes
  3. Arrondir des nombres
  • Les Formulaires
  1. Champs de saisie
  2. Type mot de passe
  3. Éléments cachés
  4. Zones de texte
  5. Listes de sélections
  6. Cases à cocher
  7. Boutons radio
  8. Eval
  9. Désactivation
  10. Envoi formulaire
  • Les Cadres
  1. Objet Frame
  2. Accéder cadre
  3. Nombre de cadres
  4. Référer aux cadres
  5. Écrire
  6. Redimensionner
  7. Cadre cible radio
  8. Imprimer
  • Environnement
  1. Détection système
  2. Les cookies
  3. Multiples cookies
  4. Path domain
  5. Codage caractères

Auteur : Mystick

Sommaire

Explication

Les listes de sélection sont très utiles afin de permettre un choix restreint de réponses à un visiteur. La liste se crée à partir de la balise <select> et chaque élément qui la compose est précédé de la balise <option>. À l'intérieur de la balise <select>, l'élément size permet de choisir l'apparence de la liste, chaque nombre indique le nombre de choix visible sans avoir à naviguer dans la liste.

L'évènement onchange détecte un changement de sélection de la part de l'utilisateur. onchange peut aussi être utilisé afin de détecter tout changement dans le texte des balises <input/> et <textarea>. Utile pour vérifier si tous les champs obligatoires d'un formulaire ont été remplis.

Exemple

 <form name="materiaux">
   <select name="liste" size="4"
    onchange="document.materiaux.boiteTexte.value=
    'materiaux.liste.options[selectedIndex].text';">
   <option> asphalte </option>
   <option> bardeau </option>
   <option> stucco </option>
   <option> brique </option>
   </select>
 
<input type="text" name="boiteTexte" value="choix ici"/>
</form>
 
image:Javascript.listBox.JPG

Il peut être étrange de voir que pour une liste, bien sûr la form possède un nom, mais rien ne différencit les options de la liste. C'est qu'il faut savoir que JavaScript vous permet d'utiliser et règler les options puisqu'elles sont mises dans un vecteur nommé options[].

Alors si on désire changer un choix dans la liste, supposons le deuxième, on peut le faire en modifiant son texte directement dans le vecteur.

Exemple

  document.materiaux.liste.options[1].text='* verre *';
  Cliquez sur ce lien pour effectuer le changement dans la liste
 

En plus de la propriété des options, select a une propriété nommée selectedIndex . Quand une option dans un select a été choisie, selectedIndex contient son indice dans le vecteur. Si aucun choix n'a été fait, selectedIndex contient l'indice -1, ceci est pratique pour vérifier dans un formulaire si tous les champs ont été complétés.

Exemple

Pour tester ceci, choisissez un matériel dans la liste des matériaux puis vous aurez son indice en cliquant ici

  <a href="" onClick="alert('L\' indice de ce matériel est: ' +  
   window.document.materiaux.liste.selectedIndex); return false;"> 
   cliquant ici </a>
  

Il est possible, vous l'aurez deviner, d'utiliser cette méthode pour mettre un choix par défaut et ainsi le sélectionner. Il suffirait de faire quelque chose comme : window.document.materiaux.liste.selectedIndex= 0; En sachant l'indice de l'élément choisi, on peut se servir de l'option de .text pour mettre la valeur choisie dans une variable.

La propriété selectedIndex identifie l'élément d'une liste actuellement sélectionné, la propriété selected est une valeur booléenne qui indique si l'élément demandé est sélectionné et la propriété defaultSelected retourne l'index de l'élément de liste sélectionné par défaut.

Les listes de sélection peuvent être réglées de manière à accepter les sélections multiples (sélection de plusieurs éléments). Pour ce faire, il ne faut qu'ajouter l'attribut multiple dans la balise <select>.

Le reste de la syntaxe de la liste ne diffère pas d'une liste ordinaire. Dans le cas d'une liste à sélection multiples, la propriété selectedIndex retourne le plus petit index de la sélection. Il ne faut pas oublier que les index sont en fait un vecteur, ce qui signifie que le premier élément de la liste a un index de 0.

La propriété selectedIndex est pratique lorsqu'on a qu'une liste. Mais lorsqu'une dépend d'une autre, c'est plus compliqué. Comme nous l'avons vu, les listes de sélection possède comme tous les autres éléments, un handler onchange. Il est appelé chaque fois qu'il y a un changement dans la sélection. Réaliser une liste qui change selon le choix de la première requière l'écriture d'un mini-programme en JavaScript. On va tenter l'expérience ici pour réviser les notions précédentes et comprendre les listes de sélections.

A voir aussi

Boîte à outils
Annuaire gratuitCe site est listé dans la catégorie Informatique : Aide et astuces en informatique Annuaire