Créer dynamiquement des options éléments en Javascript
Quel est le meilleur moyen en Javascript pour créer dynamiquement des DOM option éléments? J'ai trouvé l'Option constructeur et le createElement variante utilisée dans le code comme ceci:
var option = new Option(text, value);
et ce:
var option = document.createElement('option');
option.text = text;
option.value = value;
Sont là des inconvénients/problèmes de compatibilité avec l'une de ces méthodes? Aussi, existe-il d'autres méthodes pour créer des options de façon dynamique qui doit être préférée à la ci-dessus pour certaines raisons?
OriginalL'auteur GOTO 0 | 2013-04-22
Vous devez vous connecter pour publier un commentaire.
Il n'y a pas de différences entre les deux méthodes que je connais. À l'aide de la
Option
constructeur vous permet de facilement définir la valeur et le texte de l'option, mais vous pouvez faire la même chose à l'aide de lavalue
ettext
propriétés.Il aurait pu y avoir le
innerHTML
façon, mais IE8 et plus dur d'échouer sur ce...var option = new Option();
entraîneraoption
étant une instance de laOption
Objet etoption instanceof Option
esttrue
, tout en utilisantvar option = document.createElement('option');
entraîneraoption
être un littéral et non une instance de laOption
Objet, d'oùoption instanceof Option
estfalse
; Si tous deux ont été créés à partir du mêmeconstructor
etoption.constructor
serafunction HTMLOptionElement()
.OriginalL'auteur MaxArt
J'ai remarqué par exemple que l'utilisation de la nouvelle Option() ne fonctionne pas bien sous IE9, où il travaille dans IE10 et IE11. Récemment, j'ai dû revenir en arrière à l'original du code et de revenir le changement quelqu'un l'a fait pour revenir en arrière à l'aide de document.createElement('option') pour IE9 pour travailler.
OriginalL'auteur goe