7
votes

jQuery - gestionnaire d'événements à détecter si l'option HTML Select a été sélectionnée

Comment puis-je détecter en jQuery lorsque toute option dans une balise SELECT a été modifiée?

Par exemple [Pseudocode]: P>

$(document).ready(function() {
  $("#selectattribute").change(function() {
     alert('Handler for .change() called.');
  });
});


9 commentaires

Vous attachez un auditeur à l'élément Select pour l'événement de changement. Vous pouvez utiliser JQuery (ou n'importe laquelle d'un certain nombre de bibliothèques), ou quelques lignes de script ordinaire, ou d'un gestionnaire en ligne.


@ROBG: Vous ne devriez vraiment pas proposer en ligne-gestionnaire ...


Avez-vous essayé différents navigateurs?


@Saxoiier - Vous ne devriez vraiment pas exprimer des opinions dans un forum technique sans fournir des raisons techniques solides.


Pouvez-vous fournir le code une fois que celui-ci a été rendu par PHP


@ROBG: avec votre score élevé et la plupart des réponses marquées avec "JavaScript", vous devez savoir que vous ne devez pas mélanger HTML avec des JS en ligne et en ligne CSS car ces fichiers sont difficiles à maintenir (distinguer le contenu et la présentation visuelle). Vous pouvez le lire dans Beaucoup de réponses .


@Saxoiier - Je ne sais rien du genre. Je sais que pour considérer toutes les alternatives et leurs avantages et leurs inconvénients et ne pas suivre Dogma sans argument raisonné. Les gestionnaires en ligne ont de nombreux avantages, ils ne sont pas plus difficiles à entretenir que les attributs de données ou de classe. Les auditeurs ajout de manière dynamique ont également leurs problèmes et ne sont pas toujours la meilleure solution.


@ROBG: Oui, HTML 5 Attributs de données appartiennent également à ce contenu en ligne alors que les classes (et les identifiants) ne sont que des points d'ancrage et donc beaucoup plus faciles à gérer si elles sont correctement utilisées.


Je ne vois pas que le maintien d'un type de valeur d'attribut est différent de maintenir un autre type. Je ne dis pas «toujours utiliser des gestionnaires en ligne», je dis que ce sont une option raisonnable d'être examinée sur leurs mérites pour des cas particuliers, ils ne devraient pas être licenciés sans tenir compte de la prise en compte simplement parce qu'ils ne sont pas la hanche.


6 Réponses :


1
votes
$("select").change(function() {})

1 commentaires

Vous devez regarder les docs pour JQuery Selectors $ ("SELECT") Sélectionnerait tous les balises