27 votes

L'utilisation de jquery pour déterminer l'option sélectionnée provoque l'avertissement «l'attribut spécifié est obsolète»

Probablement manquant quelque chose d'assez évident, mais je ne peux pas comprendre ce qui se passe. Je suis en train d'utiliser jquery pour déterminer l'option actuellement sélectionnée dans une liste déroulante (Voir violon) mais quand je fais quelque chose comme le suivant, je reçois un message d'Avertissement dans l' (FF9) de la console.

var selectedValue=$('#testSelect option:selected').val();

Message D'Avertissement:

Avertissement: l'Utilisation d'attributs spécifiés attribut est obsolète. Il retourne toujours true.

Suis-je en train de faire quelque chose de mal? Est-ce quelque chose que je devrais être en préoccupe? Merci à l'avance.

29voto

glob Points 2326

jquery fait référence à la propriété "spécifiée" sur un objet Attr, elle est dépréciée avec Firefox 7 et renvoie toujours true. voir https://developer.mozilla.org/En/DOM/Attr

j'ai levé un ticket jquery pour cela: http://bugs.jquery.com/ticket/11397

2voto

geekbuntu Points 183
 $(document).on('change','select#FIELD_NAME', function() {
    alert('your selection was: '+$('select#FIELD_NAME').attr('value'));
    return false;
});
 

KISS ... chaque fois que c'est possible ;-)

0voto

Alex Wayne Points 58113

Demandez à la balise select sa valeur, elle sait laquelle est sélectionnée et utilisera cette balise pour sa valeur actuelle.

 $('#testSelect').val()
 

Vérifiez-le: http://jsfiddle.net/Ndzvm/1/

Parfois, c'est plus simple que vous ne le pensez :)

0voto

Leon_SFS Points 657

pouvez-vous utiliser ce code

 <script type="text/javascript">
$(document).ready(function() {
$('select[id$=<%=DropDownList1.ClientID%>]').bind("keyup
change", function() {
if ($(this).val() != "")
$('#message').text("Text: " + $(this).
find(":selected").text()
+ ' Value: ' + $(this).val());
else
$('#message').text("");
});
});
</script>
 

0voto

sjbwylbs Points 91

Si l'ID #testSelect est votre nom de sélection.

Obtenez la valeur:

 var selectedValue=$('#testSelect').attr('value');
 

Définissez la valeur sélectionnée:

 $('#testSelect').attr('value',your value);
 

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