2010-04-28 4 views
0

J'ai une page avec plusieurs dropdownchecklists, toutes avec des cases à cocher (plusieurs choix possibles). A l'intérieur document prêt, j'ai ce code simple:Liste jQuery Dropdown: jQuery click() anomalie

$(":checkbox").click(alert('TEST')); 

Le problème est que lorsque la page charges, les feux d'alerte. Ce que je veux faire, c'est seulement déclencher l'alerte lorsque l'on clique sur l'une des boîtes déroulantes dropdownchecklist. Je sais que je suis triste d'esprit ici. Quelqu'un peut-il m'éclairer?

Une autre façon d'énoncer le problème est simplement "Comment puis-je activer une fonction quand une case à cocher dropdownchecklist est cliquée?"

Merci d'avance.

Répondre

4

$ (": case à cocher"). Click (function() {alert ('TEST');});

+0

David, Merci pour la réponse rapide! Cela a bien sûr fait que la chose cesse de tirer sur le chargement de la page (l'homme était je suis stupide LOL merci). Toutefois, l'alerte ne se déclenche pas lorsque vous cliquez sur la case à cocher dropdownchecklist. Essayé de donner à une des cases une classe spécifique, puis de le faire: $ ("._classe_classe"). Click (function() {alert ('TEST');}); et même cela ne fonctionne pas. Apparemment, j'ai besoin d'un sélecteur différent? –

+1

Où est ce code de liaison de clic? Cela pourrait se produire avant que le navigateur n'ait rendu la liste des cases à cocher, donc cela ne correspond à rien "YET!" Assurez-vous de mettre ceci dans $ (document) .ready (function() {$ (": case à cocher"). Click (function() {alert ('TEST');});}); et si vous avez déjà du code document.ready, assurez-vous que c'est après tout ce qui rend la checkboxlist – David

+0

Vous étiez correct, j'ai eu la déclaration au mauvais endroit. Cependant, j'ai aussi remarqué (via Firebug) que le plugin dropdownchecklist encapsule chaque option select dans un div avec la classe "ui-dropdownchecklist-item". Donc, je peux obtenir le div entier en sélectionnant cette classe ou les enfants de la div par $ ('. Ui-dropdownchecklist-item'). Children(). THX! Un autre détail que je remarque: mes cases à cocher ont une étiquette. Cliquez sur à droite de l'étiquette pour cliquer sur le parent, pas sur les enfants. Donc maintenant tout ce que j'ai à faire est d'appeler ma fonction pour la classe .ui-dropdownchecklist-item et ses enfants. Merci pour l'aide! –