| auteur : simone.51 | Ce code est utile pour récupérer la valeur d'un select lorsque l'internaute clique dessus par exemple.
document. getElementById (' liste ' ). options[ document. getElementById (' liste ' ). selectedIndex] . value
|
Explications :
document.getElementById('liste') --> permet de désigner la liste en question
La propriété options permet de désigner une des valeurs de la liste déroulante. Il s'agit d'un tableau.
Ainsi, pour désigner le premier élément de la liste, il suffit de faire :
document. getElementById (' liste ' ). options[ 0 ]
|
document.getElementById('liste').selectedIndex --> permet de désigner l'élément sélectionné.
|
| auteur : simone.51 | Ce code est utile pour récupérer le texte d'un select lorsque l'internaute clique dessus par exemple.
document. getElementById (' liste ' ). options[ document. getElementById (' liste ' ). selectedIndex] . text
|
Explications :
document.getElementById('liste') --> permet de désigner la liste en question
La propriété options permet de désigner une des valeurs de la liste déroulante. Il s'agit d'un tableau.
Ainsi, pour désigner le premier élément de la liste, il suffit de faire :
document. getElementById (' liste ' ). options[ 0 ]
|
document.getElementById('liste').selectedIndex --> permet de désigner l'élément sélectionné
|
| auteur : denisC |
Pour modifier l'élément sélectionné dans un select, il suffit de changer
l'attribut selected des éléments:
document. forms[ 0 ] . monSelect. options[ i] . selected = true ;
|
Dans le cas d'un select normal, si une option est passée à true, elle deviendra
automatiquement l'option sélectionnée. Pour un select multiple, cette option
se rajoutera aux options déjà sélectionnées.
|
| auteur : denisC |
Pour récupérer les valeurs sélectionnées dans un select multiple, il faut
parcourir l'ensemble des options de ce select (comme pour des checkbox).
var selectedList = new Array ();
var selectBox = document. forms[ 0 ] . monSelect;
for (var i= 0 ; i< selectBox. options. length; i+ + ) {
if (selectBox. options[ i] . selected) {
selectedList. push (selectBox. options[ i] );
}
}
var alertTxt = " " ;
for (opt in selectedList) {
alertTxt + = " L'option " + opt. value+ " est selectionnée \n " ;
}
alert (alertTxt);
|
|
| auteur : simone.51 | Cette fonction ne marche que si les cases à cocher possèdent le même nom.
for (i= 0 ; i< document. nomduform. nomdescases. length; i+ + ) {
if (document. nomduform. nomdescases[ i] . checked)
else
}
|
|
| auteur : BrYs | Il suffit d'utiliser la propriété value .
Ainsi, il suffit de faire :
document. getElementById (' idduchamp ' ). value
|
|
| auteurs : Auteur, SpaceFrog |
Pour créer un élément HTML, nous utilisons cette syntaxe (par exemple pour créer un input) :
var monInput;
monInput = document. createElement (" input " );
monInput. type = " text " ;
monInput. name = " nameInput " ;
monInput. id = " idInput " ;
monInput. value = " " ;
document. getElementById (" idFormulaire " ). appendChild (monInput);
|
Par la suite, si vous faites :
alert (document. getElementById (" idInput " ). name);
|
Firefox retournera nameInput tandis que IE ne retournera rien.
Pire, si vous soumettez le formulaire, IE ne transmettra pas cet input !
Pour pallier à ce problème la syntaxe suivante a été proposée :
monInput = document. createElement (" <input name='nameInput'> " );
|
Dans ce cas sous IE un
document. getElementById (" idInput " ). name
|
retournera bien nameInput.
Mais cette syntaxe ne fonctionne qu'avec IE et lève une exception (erreur) avec la plupart des navigateurs.
Voici donc deux manières de contourner le problème :
if (document. all){
monInput = document. createElement (" <input name='nameInput'> " );
}
else {
monInput = document. createElement (" input " );
monInput. name = " nameInput " ;
}
monInput. type = " text " ;
monInput. id = " idInput " ;
monInput. value = " " ;
document. getElementById (" idFormulaire " ). appendChild (monInput);
|
2ème exemple : gérer l'exception levée :
try {
monInput = document. createElement (" <input name='nameInput'> " );
}
catch (erreur){
monInput = document. createElement (" input " );
monInput. name = " nameInput " ;
}
monInput. type = " text " ;
monInput. id = " idInput " ;
monInput. value = " " ;
document. getElementById (" idFormulaire " ). appendChild (monInput);
|
|
lien : Discussion en rapport avec cette question
|
Consultez les autres F.A.Q.
|
|
Les sources présentées sur cette page sont libres de droits
et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation
constitue une œuvre intellectuelle protégée par les droits d'auteur.
Copyright © 2004 Developpez Developpez LLC.
Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne
peut être faite de ce site ni de l'ensemble de son contenu : textes, documents
et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez
selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.