141 votes

Comment procéder en utilisant jQuery - document.getElementById("selectlist").value

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.

213voto

James Wiseman Points 18347

"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
 

148voto

ChaosPandion Points 37025
$('#selectlist').val();

9voto

RodH257 Points 1271

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.

9voto

sayannayas Points 387

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

2voto

marksyzm Points 1092

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.com

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.

Powered by:

X