option | NN 2 IE 3 DOM 1 | ||||||
L´objet option représente l´élément option, qui doit toujours être imbriqué dans un élément select. Les références à un objet option utilisent généralement son objet select parent, l'objet option étant traité comme un élément d'un tableau d'options propres à l'objet select. Avec les navigateurs modernes, vous pouvez aussi référencer un objet option directement avec son ID. La propriété disabled (décrite parmi les propriétés partagées précédemment dans ce chapitre) est disponible pour IE 4 et versions ultérieures, ainsi que Netscape 6. |
|||||||
Vous pouvez modifier l´ensemble d´options d´un objet select dans les navigateurs à partir de Netscape 3 et Explorer 4 avec un code de compatibilité ascendante qui continue à fonctionner dans les navigateurs plus récents. Si la modification nécessite de remplacer des options existantes avec une liste différente, vous pouvez simplement affecter de nouvelles valeurs aux propriétés text, value et selected de chaque option dans le tableau options de l´objet select. Mais si la liste ne compte pas le même nombre d´options, il vaut mieux supprimer tous les objets option et en insérer de nouveaux. Une fonction de constructeur pour un nouvel objet Option vous permet de créer les objets l´un après l´autre, puis de leur affecter un emplacement dans le tableau options. La syntaxe pour le constructeur est la suivante: var newOpt = new Option("text", "value", isDefaultSelectedFlag, isSelectedFlag); |
|||||||
La fonction suivante illustre les étapes typiques de la réécriture de la liste d´options d´un objet select: function setSelect(selectElemObj) { // remove existing options selectElemObj.options.length = 0; // create and assign options, one by one selectElemObj.options[0] = new Option("Hercule Poirot", "poirot", false, false); selectElemObj.options[1] = new Option("Miss Marple", "marple", false, false); ... } |
|||||||
Dans un environnement de production, les valeurs des paramètres du constructeur seraient probablement fournies à la page sous la forme d´un tableau d´objets, permettant l´insertion de nouvelles options au sein d´une boucle for. Pour d´autres façons d´approcher cette t che, reportez-vous à la méthode options.add() (pour IE uniquement) et à la méthode select.add() (pour IE 5 ou les versions ultérieures et Netscape 6 uniquement). |
|||||||
Equivalent HTML | |||||||
<option> |
|||||||
Référence de modèle d'objet | |||||||
[window.]document.formName.selectName.options[i] [window.]document.forms[i].elements[i].options[i] [window.]document.getElementById("elementID") |
|||||||
Propriétés spécifiques à l´objet | |||||||
|
|||||||
Méthodes spécifiques à l´objet | |||||||
Aucune. |
|||||||
Propriétés de gestionnaire d´événements spécifiques à l´objet | |||||||
Aucune. |
defaultSelected | NN 2 IE 3 DOM 1 |
Lecture/écriture | |
Indique si l'attribut selected de l'élément est paramétré dans la balise. Vous pouvez comparer la propriété selected actuelle à defaultSelected pour savoir si l'état du contrôle select a été modifié depuis le chargement du document. La modification de cette propriété n'affecte pas l'état de la propriété selected. |
|
Exemple | |
var listItem = document.forms[0].selector.options[2]; if (listItem.selected != listItem.defaultSelected) { // process for changed state } |
|
Valeur | |
Valeur booléenne: true | false. |
|
Par défaut | |
Déterminé par l'attribut de balise HTML. |
form | NN 6 IE 4 DOM 1 |
Lecture seule | |
Renvoie une référence à l'élément form qui contient l'élément select et ses options. |
|
Exemple | |
var theForm = document.getElementById("myOption3").form; |
|
Valeur | |
Référence de l'objet form. |
|
Par défaut | |
Aucune. |
index | NN 6 IE 3 DOM 1 |
Lecture seule | |
Renvoie la valeur d'index à base zéro de l'objet d'option courant à l'intérieur de la collection d'options de l'élément select. La propriété selectedIndex de l'objet select renvoie la valeur d'index de l'option actuellement sélectionnée. |
|
Exemple | |
var whichItem = document.getElementById("myOption3").index; |
|
Valeur | |
Nombre entier. |
|
Par défaut | |
Aucune. |
label | NN 6 IE 5(Mac)/6(Win) DOM 1 |
Lecture/écriture | |
Représente l´attribut label de l'élément option. Cette propriété est conçue pour être utilisée avec les menus hiérarchiques, mais elle n´est opérationnelle que dans IE 5 pour Mac, où elle renvoie la même valeur que la propriété text. |
|
Valeur | |
Chaîne. |
|
Par défaut | |
Aucune. |
selected | NN 2 IE 3 DOM 1 |
Lecture/écriture | |
Indique si l'option de liste a été sélectionnée par l'utilisateur, ce qui signifie que sa valeur est envoyée avec le formulaire. Des scripts peuvent modifier la valeur pour sélectionner un élément sur la base d'un algorithme. Pour identifier l'option sélectionnée, il est plus efficace d'utiliser la propriété selectedIndex de l'objet sélectionné, que de rechercher dans toutes les options celles dont les propriétés sélectionnées sont vraies. L'exception à ce principe se présente lorsque l'élément select est paramétré pour permettre plusieurs sélections, auquel cas vous devez les parcourir toutes pour trouver les éléments choisis. |
|
Exemple | |
document.forms[0].selectList.options[3].selected = true; |
|
Valeur | |
Valeur booléenne: true | false. |
|
Par défaut | |
false |
text | NN 2 IE 3 DOM 1 |
Lecture/écriture | |
Fournit le texte associé à l'élément option. Le texte figurant entre les balises de début et de fin est ce qui s'affiche dans l'élément select à l'écran. Il est possible de stocker, récupérer et modifier une valeur masquée associée à l'élément de list via la propriété value. |
|
Exemple | |
var list = document.forms[0].selectList; var listItemText = list.options[list.selectedIndex].text; |
|
Valeur | |
Chaîne. |
|
Par défaut | |
Aucune. |
value | NN 4 IE 4 DOM 1 |
Lecture/écriture | |
Fournit la valeur associée à l'élément option. Si un attribut value ou une propriété value sont définis pour l'élément option, c'est cette valeur qui est renvoyée comme propriété value; sinon, la propriété renvoie une chaîne vide. |
|
Exemple | |
var itemValue = document.forms[0].selectList.options[2]value; |
|
Valeur | |
Chaîne. |
|
Par défaut | |
Aucune. |