115 votes

Comment obtenir l'option $ (cette) sélectionnée dans jQuery ?

Le code suivant fonctionne :

 $("#select-id").change(function(){
  var cur_value = $('#select-id option:selected').text();
  . . .
});

Comment refactoriser la deuxième ligne pour :

 var cur_value = $(this).***option-selected***.text();

Qu'est-ce que tu utilises pour ***option-selected*** ?

140voto

jorgebg Points 5124

Pour la valeur sélectionnée : $(this).val()

Si vous avez besoin de l'élément d'option sélectionné, $("option:selected", this)

129voto

user568458 Points 3511
 $(this).find('option:selected').text();

63voto

angelmedia Points 56

Le meilleur moyen et le plus court à mon avis pour les événements onchange dans la liste déroulante pour obtenir l'option sélectionnée :

 $('option:selected',this);

pour obtenir l'attribut value :

 $('option:selected',this).attr('value');

pour obtenir la partie affichée entre les balises :

 $('option:selected',this).text();

Dans votre échantillon :

 $("#select-id").change(function(){
  var cur_value = $('option:selected',this).text();
});

48voto

Satyam Khatri Points 431
var cur_value = $('option:selected',this).text();

14voto

He Shiming Points 2454

Cela devrait fonctionner:

 $(this).find('option:selected').text();

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