selectNN 2 IE 3 DOM 1

L'objet select représente l'élément select. Ce dernier est un contrôle de formulaire contenant des éléments option. Notez que les propriétés innerHTML et innerText ne sont pas disponibles dans Internet Explorer 4 pour Macintosh. La propriété disabled partagée est disponible pour Netscape 6.

 
Equivalent HTML
 
<select>
 
Référence de modèle d'objet
 
[window.]document.formName.selectName
[window.]document.forms[i].elements[i]
[window.]document.getElementById("elementID")
 
Propriétés spécifiques à l´objet
 
dataFlddataSrcformlengthmultiplename
options[]selectedIndexsizetypevalue
 
Méthodes spécifiques à l´objet
 
add()item()namedItem()remove()
 
Propriétés de gestionnaire d´événements spécifiques à l´objet
 
GestionnaireNNIEDOM
onblur24s.o
onchange24s.o
onfocus24s.o
dataFldNN s.o. IE 4 DOM s.o.

Lecture/écriture

Utilisé avec la fonction de liaison de données de Microsoft Internet Explorer pour associer un nom de colonne provenant d'une source de données distante à la propriété selectedIndex de l'objet select. Vous devez également définir un attribut datasrc pour l'élément. Le paramétrage des deux propriétés dataFld et dataSrc sur des chaînes vides rompt la liaison entre l'élément et la source de données. Fonctionne uniquement avec les sources de données de fichiers sources dans IE 5/Mac.

 
Exemple
 
document.forms[0].mySelect.dataFld = "choice";
 
Valeur

Identifiant de la colonne de la source de données, sensible à la casse.

 
Par défaut

Aucune.

dataSrcNN s.o. IE 4 DOM s.o.

Lecture/écriture

Utilisé avec la fonction de liaison de données de Microsoft Internet Explorer pour spécifier l´ID de l´élément object de la page qui charge l´objet de source de données pour l´accès distant aux données. Le paramétrage des deux propriétés dataFld et dataSrc sur des chaînes vides rompt la liaison entre l'élément et la source de données. Fonctionne uniquement avec les sources de données de fichiers sources dans IE 5/Mac.

 
Exemple
 
document.forms[0].mySelect.dataSrc = "DBSRC3";
 
Valeur

Identifiant de la source de données, sensible à la casse.

 
Par défaut

Aucune.

formNN 2 IE 3 DOM 1

Lecture seule

Renvoie une référence à l'élément form qui contient l'élément courant. Lors du traitement d´un événement à partir de cet élément, la fonction de gestionnaire d´événements a automatiquement accès à l´élément select (en tant que propriété target ou srcElement de l´objet événement). En lisant la propriété form, le script peut facilement accéder à d´autres contrôles dans le même formulaire.

 
Exemple
 
var theForm = evt.srcElement.form;
 
Valeur

Référence de l'objet élément form.

 
Par défaut

Aucune.

lengthNN 2 IE 3 DOM 1

Lecture/écriture

Nombre d'objets option imbriqués dans l'objet select. La valeur renvoyée est identique à la propriété options.length de l´objet select et peut être utilisée sans aucun problème comme valeur de compteur de maximum de boucles for pour effectuer une recherche par itération dans les objets option imbriqués. Le DOM W3C spécifie que cette propriété est en lecture seule, mais comme elle est en lecture/écriture dans les navigateurs courants depuis un certain temps, vous pouvez continuer de modifier cette valeur. En gros, la seule modification apportée à cette propriété, le cas échéant, devrait être la définition de sa valeur sur zéro pour vider toutes les options de l´objet select. Mieux encore, si vous créez pour IE 5 et versions ultérieures ou Netscape 6, utilisez les méthodes select.remove() et select.add() pour modifier les éléments option imbriqués dans l´élément select.

 
Exemple
 
document.forms[0].mySelect.length = 0;
 
Valeur

Nombre entier.

 
Par défaut

Aucune.

multipleNN 6 IE 4 DOM 1

Lecture/écriture

Indique si le navigateur doit afficher l'élément select sous forme de zone de liste et permettre aux utilisateurs de sélectionner plusieurs éléments dans la liste. Par défaut, la propriété size est paramétrée sur le nombre d'éléments option imbriqués, mais vous pouvez définir une autre valeur. Pour transformer une liste de sélection déroulante en menu contextuel, définissez la propriété multiple sur false et la propriété size sur 1. Vous pouvez sélectionner des éléments contigus en maintenant la touche Maj enfoncée tout en cliquant sur le premier et le dernier élément à sélectionner. Pour sélectionner des éléments non contigus, l´utilisateur doit maintenir la touche Ctrl (Windows) ou Commande (Macintosh) enfoncée tout en cliquant sur chaque élément désiré. La propriété multiple est sans effet si l'attribut size est paramétré sur 1 pour afficher un menu contextuel.

 
Exemple
 
if (document.entryForm.list3.multiple) {
    ...
}
 
Valeur

Valeur booléenne: true | false.

 
Par défaut

false

nameNN 2 IE 3 DOM 1

Lecture/écriture

Identifiant associé au contrôle du formulaire. Lors de l'envoi du formulaire au serveur, la valeur de cette propriété est envoyée comme une moitié de la paire nom / valeur. Les noms sont masqués à la vue de l'utilisateur, les étiquettes de contrôle étant affectées par d'autres moyens, en fonction du type de contrôle. Les noms de contrôle de formulaire peuvent également être utilisés dans des instructions de script faisant référence à des objets. Bien que les normes modernes préfèrent l´attribut id, de nombreux navigateurs nécessitent encore qu´un attribut name soit affecté à un contrôle pour que la valeur de ce dernier puisse être envoyée.

 
Exemple
 
document.orderForm.payment.name = "credcard";
 
Valeur

Identifiant sensible à la casse, sous forme de chaîne, conforme aux règles de dénomination des identifiants: il ne peut pas contenir d'espace blanc ni de signe de ponctuation, à l'exception du caractère de soulignement, et ne peut pas commencer par un chiffre.

 
Par défaut

Aucune.

options[]NN 2 IE 3 DOM 1

Lecture seule

Renvoie un tableau de tous les objets option que contient l´élément courant. Les éléments de ce tableau sont indexés en base zéro dans l'ordre dans lequel ils apparaissent dans le code source. Pour plus de détails sur l'utilisation de cette collection pour ajouter et supprimer des éléments option d'un élément select tout en assurant la compatibilité ascendante, reportez-vous à l'objet options. Effectuez une boucle dans cette collection dans les éléments select définis pour des sélections multiples.

 
Exemple
 
var selVals = new Array();
for (var i = 0; i < document.forms[0].mySelect.length; i++) {
    if (document.forms[0].mySelect.options[i].selected) {
        selVals[selVals.length] = document.forms[0].mySelect.options[i].value;
    }
}
 
Valeur

Tableau d´objets option.

 
Par défaut

Aucune.

selectedIndexNN 2 IE 3 DOM 1

Lecture/écriture

Nombre entier à base zéro correspondant à l'option sélectionnée par l'utilisateur. Si l'élément select est paramétré pour accepter plusieurs sélections, la propriété selectedIndex renvoie l'index du premier élément sélectionné (voir la propriété selected). Vous pouvez utiliser cette propriété pour avoir accès à la valeur ou au texte de l'élément sélectionné, comme l'illustre l'exemple ci-après.

 

Dans les navigateurs récents, si aucune option n´est sélectionnée, la propriété selectedIndex renvoie -1. La définition de la valeur sur -1 pour désélectionner tous les éléments fonctionne comme prévu dans IE 5 et versions ultérieures pour Windows. Pour Netscape 6, la définition de la propriété sur -1 n´effacera peut-être pas l´option affichée, mais elle désélectionne efficacement tous les éléments d´un formulaire envoyé.

 
Exemple
 
var list = document.forms[0].selectList;
var listText = list.options[list.selectedIndex].text;
 
Valeur

Nombre entier.

 
Par défaut

Aucune.

sizeNN 6 IE 4 DOM 1

Lecture/écriture

Contrôle le nombre de lignes affichées dans une liste de sélection déroulante, reflétant l´attribut size de l´élément select. Lorsqu´elle est définie sur true, la propriété multiple écrase la valeur size définie sur un nombre inférieur au nombre d´options. Pour transformer une liste de sélection déroulante en menu contextuel, définissez la propriété multiple sur false et la propriété size sur 1.

 
Exemple
 
document.forms[0].choices.size = 6;
 
Valeur

Nombre entier.

 
Par défaut

Aucune.

typeNN 3 IE 4 DOM 1

Lecture seule

Renvoie le type de l'élément contrôle de formulaire. Deux valeurs sont possibles pour l'objet select, selon que l'élément est défini comme une liste à choix multiples ou non. La valeur renvoyée s'affiche en lettres minuscules. Il peut s'avérer nécessaire de parcourir successivement tous les éléments de formulaire à la recherche de types spécifiques à traiter (par exemple, en vidant tous les contrôles de formulaire de type “ text ” sans modifier les autres).

 

Remarque: Navigator 4 renvoie incorrectement le type d´un objet select comme select-multiple si l´attribut size de l´élément est défini sur une valeur supérieure à 1, même si l´attribut multiple n´est pas configuré. Problème résolu dans Netscape 6.

 
Exemple
 
if (document.forms[0].elements[3].type == "select-multiple") {
    ...
}
 
Valeur

L'une des constantes suivantes (sous forme de chaîne): button | checkbox | file | hidden | image | password | radio | reset | select-multiple | select-one | submit | text | textarea.

 
Par défaut

Dépend de la valeur de multiple.

valueNN 6 IE 4 DOM 1

Lecture/écriture

La valeur courante associée au contrôle de formulaire envoyé avec la paire nom/valeur de cet élément. Toutes les valeurs sont des chaînes, mais elles peuvent représenter d'autres types de données, notamment des valeurs booléennes et numériques. Pour les navigateurs antérieurs à IE 4 et Netscape 6, les scripts doivent extraire la valeur de l´option sélectionnée en utilisant la propriété selectedIndex de l´objet select en tant qu´index dans le tableau options, puis passer en revue la propriété selected de chaque objet option pour trouver celui ou ceux qui sont true.

 
Exemple
 
if (document.forms[0].medium.value == "CD-ROM") {
    ...
}
 
Valeur

Chaîne.

 
Par défaut

Aucune.

add()NN 6 IE 5 DOM 1

add(newOptionElement[, positionIndex]) add(newOptionElement, optionElementReference)

Ajoutez un nouvel élément option à l´élément select courant. Malheureusement, IE et Netscape 6 n´utilisent pas les mêmes valeurs de paramètres pour cette méthode. Tous les navigateurs nécessitent une référence à un nouvel élément option (la valeur renvoyée par une méthode document.createElement("option") convient pour cela), mais le deuxième paramètre varie selon le navigateur. Dans IE, le deuxième paramètre est facultatif et fournit un index numérique à l´élément option; le nouvel élément option est inséré devant cet élément. Sans deuxième paramètre, le nouvel élément option est ajouté aux éléments option existants. Dans Netscape 6 (qui implémente la recommandation du DOM W3C à partir du module HTML inachevé), le deuxième paramètre est obligatoire. Ce paramètre est soit une référence à un élément option existant (le nouvel élément option est inséré devant cet élément option référencé) soit null (le nouvel élément option est ajouté aux éléments option existants).

 
Paramètres
 
  • Référence à un élément option créé par script, généralement avec la méthode document.createElement().
  • Paramètre IE facultatif, sous forme de nombre entier, indiquant l´élément option imbriqué existant devant lequel le nouvel élément option doit être inséré. Sans deuxième paramètre, le nouvel élément option est ajouté à la fin de la liste des options.
  • Référence à un élément option devant lequel le nouvel élément option doit être inséré. Vous pouvez aussi utiliser null pour ajouter le nouvel élément option à la fin de la liste des options.
 
Valeur renvoyée

Aucune.

item()NN s.o. IE 5 DOM s.o.

item(index[, subindex])

Renvoie un objet option imbriqué ou une collection d'objets option imbriqués pour l'élément correspondant à la valeur d'index (ou éventuellement aux valeurs index et subindex).

 
Paramètres
 
  • Lorsque le paramètre est un nombre entier à base zéro, la valeur renvoyée est un seul élément qui correspond audit élément numéroté dans l´ordre du code source (imbriqué dans l´élément actuel). Lorsque le paramètre est une chaîne, la valeur renvoyée est une collection d´éléments dont les propriétés id correspondent à cette chaîne.
  • Si vous spécifiez une valeur sous forme de chaîne pour le premier paramètre, vous pouvez utiliser le second pour spécifier un nombre entier à base zéro afin d'extraire un élément spécifique de la collection dont les propriétés id correspondent à la valeur de chaîne du premier paramètre.
 
Valeur renvoyée

Objet ou collection d'objets (tableau). A défaut de correspondance avec les paramètres, la valeur renvoyée est null.

namedItem()NN s.o. IE 6 DOM s.o.

namedItem(ID)

Renvoie un objet option imbriqué ou une collection d'objets option imbriqués pour l'élément correspondant à la valeur de chaîne de paramètre.

 
Paramètres
 
  • La chaîne contenant la même valeur que l´attribut id de l´élément désiré.
 
Valeur renvoyée

Un objet option ou une collection (tableau) d´objets option. A défaut de correspondance avec les paramètres, la valeur renvoyée est null.

remove()NN 6 IE 5 DOM 1

remove(positionIndex)

Supprime un élément option de l´élément select courant à l´emplacement d´index à base zéro indiqué par la valeur de paramètre. Au lieu de définir la propriété length de l´objet select sur zéro, vous pouvez supprimer toutes les options existantes avec une simple construction en boucle:

 

A ce stade, vous pouvez remplir la liste de nouvelles options par le biais des diverses approches décrites dans la section consacrée à la méthode add() et celle consacrée à l´objet options.

 
Paramètres
 
  • Nombre entier à base zéro indiquant l´élément de la collection d´options imbriquées qui doit être supprimé.
 
Valeur renvoyée

Aucune.

focus()NN 2 IE 3 DOM 1

Donne l'activation à partir de l'objet courant, moment auquel l'événement onfocus de l'objet se déclenche. Remarque: La plage d'éléments capables d'activation et de fondu (l'événement et la méthode) est limitée dans tous les navigateurs sauf dans les versions les plus récentes de Microsoft Internet Explorer (reportez-vous à l'attribut tabindex dans le chapitre 8). Pour une plus grande fiabilité en ce qui concerne la compatibilité ascendante, appliquez la méthode focus() à des éléments qui sont activables de façon évidente, tels que les éléments input et textarea .

 

Pour activer une zone de texte et présélectionner tout le texte de la zone, utilisez la séquence des méthodes focus() et select() sur l'élément. Si cette séquence doit se produire après un changement de fenêtre (par exemple, après la fermeture d'une boîte de dialogue d'alerte), placez les méthodes dans une fonction indépendante et invoquez cette méthode par le biais de la méthode setTimeout() après la méthode alert() de la boîte de dialogue. Cela permet à IE pour Windows d'exécuter les instructions dans l'ordre correct.

 
Paramètres

Aucune.

 
Valeur renvoyée

Aucune.

accessKeyNN s.o. IE 4 DOM 1

Lecture/écriture

Une seule touche de caractère qui active un élément (dans certains navigateurs) ou active un contrôle de formulaire ou une action de lien. Le navigateur et le système d'exploitation déterminent si l'utilisateur doit appuyer sur une touche de modification (par exemple Ctrl, Alt ou Commande) en même temps que sur la touche d'accès pour activer le lien. Dans IE 5 pour Windows et versions ultérieures ainsi que Netscape 6, il doit obligatoirement s'agir de la touche Alt et celle-ci est insensible à la casse. Dans IE 5 pour Macintosh et versions ultérieures ainsi que Netscape 6, il doit obligatoirement s'agir de la touche Ctrl.

 

Bien que répertorié ici comme attribut largement partagé, ce n'est pas toujours le cas dans toutes les implémentations. Netscape 6 (par le biais du DOM W3C) reconnaît cette propriété pour les éléments suivants uniquement: a , area , button , input , label , legend et textarea . A cette liste, IE 4 ajoute applet , body , div , embed , isindex , marquee , object , select , span , table et td (mais supprime label et legend ). IE 5 ajoute tout autre élément affichable, mais attention: à l'exception de l'élément input et d'autres éléments ayant trait aux formulaires, vous devez aussi affecter un attribut tabindex ou une propriété tabIndex à l'élément dans IE 5 et versions ultérieures (même s'il ne s'agit que d'une valeur de zéro pour tous) pour permettre à la combinaison de touches d'accélération d'activer l'élément. A partir de Netscape 7, Netscape ne modifie pas le comportement de l'interface utilisateur si un script modifie la valeur de la propriété.

 
Exemple
 
document.links[3].accessKey = "n";
 
Valeur

Caractère unique du clavier alphanumérique (y compris les signes de ponctuation).

 
Par défaut

Une chaîne vide.

disabledNN 6 IE 4 DOM 1

Lecture/écriture

Détermine si l'élément est disponible pour une action interactive de l'utilisateur. S'il est défini sur la valeur true , l'utilisateur ne peut pas activer ni modifier cet élément, qui apparaît généralement en grisé sur cette page. Cette propriété est disponible pour tous les objets éléments dans IE 5.5 pour Windows et versions ultérieures. Pour IE 4 et IE 5, elle ne s'applique qu'aux contrôles de formulaire, alors que Netscape 6 et versions ultérieures reconnaissent cette propriété pour les contrôles de formulaire et l'objet élément style . La paire désactivée nom  /  valeur d'un contrôle de formulaire n'est pas transmise avec le formulaire.

 
Exemple
 
document.getElementById("myButton").disabled = true;
 
Valeur

Valeur booléenne: true | false .

 
Par défaut

false

recordNumberNN s.o. IE 4 DOM s.o.

Lecture seule

Utilisée avec la fonction de liaison de données IE, renvoie un nombre entier représentant l'enregistrement dans le jeu de données ayant généré l'élément (par exemple un élément dont le contenu provient d'une liaison de données). Vous pouvez utiliser les valeurs de cette propriété pour extraire un enregistrement donné d'un ensemble d'enregistrements Active Data Objects (ADO) (voir la propriété recordset ). Bien que cette propriété soit définie pour tous les objets éléments de Microsoft Internet Explorer, les autres propriétés associées à la liaison de données appartiennent à un sous-ensemble d'éléments.

 
Exemple
 
<script for="tableTemplate" event="onclick">
    myDataCollection.recordset.absoluteposition = this.recordNumber;
    ...
</script>
 
Valeur

Nombre entier.

 
Par défaut

null

tabIndexNN 6 IE 4 DOM 1

Lecture/écriture

Nombre indiquant la position de cet élément dans l'ordre de tabulation des éléments pouvant être activés dans le document. L'ordre de tabulation suit un ensemble de règles très strictes. Les éléments dont les valeurs affectées aux propriétés tabIndex diffèrent de zéro sont les premiers activés lorsqu'un utilisateur commence à tabuler dans une page. Le premier élément activé est celui dont l'attribut tabIndex a la valeur la plus faible, et ainsi de suite, dans l'ordre croissant, quel que soit l'emplacement physique des éléments sur la page ou dans le document. Si deux éléments ont un attribut tabIndex de valeur identique, c'est celui qui apparaît le premier dans le document qui est activé d'abord. Viennent ensuite les éléments qui ne prennent pas en charge la propriété tabIndex ou dont la valeur est zéro. Ces éléments sont activés dans l'ordre où ils apparaissent dans le document.

 

Le DOM W3C et Netscape 6 limitent la propriété tabIndex aux objets éléments suivants: a , area , button , input , object , select , textarea . A cette liste, IE 4 ajoute applet , body , div , embed , isindex , marquee , span , table , et td . IE 5 ajoute tout autre élément affichable. Une valeur négative dans IE (uniquement) supprime un élément de la séquence de tabulation.

 

Les liens et les ancres ne sont pas activables à l'aide de la touche de tabulation dans la version Macintosh de Microsoft Internet Explorer 4 et la propriété tabIndex des objets éléments a est donc ignorée dans cette version.

 
Exemple
 
document.getElementById("link3").tabIndex = 6;
 
Valeur

Nombre entier.

 
Par défaut

0

blur()NN 2 IE 3 DOM 1

Supprime l'activation de l'objet courant, moment auquel l'événement onblur de l'objet se déclenche. Remarque: La plage d'éléments capables d'activation et de fondu (l'événement et la méthode) est limitée dans tous les navigateurs sauf dans les versions les plus récentes de Microsoft Internet Explorer (reportez-vous à l'attribut tabindex dans le chapitre 8). Pour une plus grande fiabilité en ce qui concerne la compatibilité ascendante, appliquez la méthode blur() à des éléments qui sont activables de façon évidente, tels que les éléments input et textarea . L'affectation de l'attribut onfocus="this.blur();" à un élément input texte, par exemple, est une façon grossière mais efficace en matière de compatibilité ascendante de désactiver un champ pour les navigateurs ne fournissant pas de véritable désactivation d'éléments.

while (selectElemRef.length> 0) {
    selectElemRef.remove(0);
} 
 

Utilisez les méthodes blur() et focus() avec modération sur la même page. Vous pouvez déclencher des boucles d'activation et de fondu infinies par accident si des boîtes de dialogue d'alerte sont impliquées à un moment ou à un autre. De plus, sachez que lorsque vous invoquez la méthode blur() sur un objet, un autre objet (peut-être l'objet window ) reçoit un événement onfocus .

 
Paramètres

Aucune.

 
Valeur renvoyée

Aucune.