En jQuery, quel est l’équivalent de document.getElementById("selectlist").value
?
J'essaie d'obtenir la valeur d'un élément de liste de sélection.
Merci.
En jQuery, quel est l’équivalent de document.getElementById("selectlist").value
?
J'essaie d'obtenir la valeur d'un élément de liste de sélection.
Merci.
"Equivalent" est le mot ici
Tandis que...
$('#selectlist').val();
...est équivalent à...
document.getElementById("selectlist").value
... il convient de noter que ...
$('#selectlist')
... bien que "équivalent" ne soit pas le même que ...
document.getElementById("selectlist")
... comme le premier renvoie un objet jQuery, pas un objet DOM.
Pour obtenir le ou les objets DOM à partir de celui de jQuery, utilisez ce qui suit:
$('#selectlist').get(); //get all DOM objects in the jQuery collection
$('#selectlist').get(0); //get the DOM object in the jQuery collection at index 0
$('#selectlist')[0]; //get the DOM objects in the jQuery collection at index 0
Le Chaos est sur place, même si, pour ces sortes de questions que vous devriez vérifier le Jquery Documentation en ligne - c'est vraiment très complet. La fonctionnalité que vous êtes après est appelé "sélecteurs jquery'
En général, il n' $('#ID').val()
- le .après peut faire un certain nombre de choses sur l'élément qui est retourné dans le sélecteur. Vous pouvez également sélectionner tous les éléments sur une certaine classe et de faire quelque chose pour chacun d'entre eux. Consultez la documentation pour certains de bons exemples.
Cela peut se faire de trois manières différentes, même si toutes sont presque identiques
Façon Javascript
document.getElementById('test').value
Façon jquery
$("#test").val()
$("#test")[0].value
$("#test").get(0).value
vous pouvez tester avec un exemple de travail ici
Pour ceux qui se demandent si jQuery sélecteurs d'id sont plus lentes que le document.getElementById, la réponse est oui, mais pas à cause de l'idée préconçue qu'il recherche à travers l'ensemble du DOM à la recherche d'un élément. jQuery n'utilisent en fait la méthode native. C'est en fait parce que jQuery utilise une expression régulière d'abord de séparer les chaînes dans le sélecteur de vérifier par, et de de course du constructeur:
rquickExpr = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/
Tandis que l'utilisation d'un élément du DOM comme un argument revient tout de suite avec "il".
Donc ceci:
$(document.getElementById('blah')).doSomething();
Sera toujours plus rapide que ceci:
$('#blah').doSomething();
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.