Comment détecter jQuery UI radio événement de changement?
J'ai 2 commandes de la radio:
<fieldset id="sort">
<label for="sort">Sort: </label>
<input class="sortDirection" type="radio" id="asc" name="sortDirection"><label for="asc">asc</label>
<input class="sortDirection" type="radio" id="desc" name="sortDirection"><label for="desc">desc</label>
</fieldset>
Voici le jquery je suis en utilisant:
$(document).ready(function(){
$('#sort').buttonset();
});
$('#asc').on("change", function(event){
alert("CHANGE EVENT!");
});
J'ai aussi essayé (avec les mêmes résultats):
$('#sort input[type="radio"]').on("change", function(event){
alert("CHANGE EVENT!");
});
L'alerte n'est jamais exécutée. Ce que je fais mal?
Avez-vous essayé sur
Semble fonctionner ici .. jsfiddle.net/rcK9h
il n'a pas de travail, parce que même les auditeurs devraient être à l'intérieur onload de la fonction.
change
événement?Semble fonctionner ici .. jsfiddle.net/rcK9h
il n'a pas de travail, parce que même les auditeurs devraient être à l'intérieur onload de la fonction.
OriginalL'auteur DominicM | 2012-12-27
Vous devez vous connecter pour publier un commentaire.
Les événements doivent être à l'intérieur de la $(document).prêt ou fenêtre.onload
ce code :
devrait être
Si l'événement est attaché à un élément, le code doit s'exécuter après que l'arborescence du DOM a été généré ou bien il ne sera pas trouver ce qu'il cherche, avec
$(document).ready();
vous de vérifier que c'est;.OriginalL'auteur Andy Ecca
EXEMPLE
Je vous recommande d'utiliser le
change
de l'événement au lieu de leclick
événement.change
ne se déclenche pas à nouveau lorsque la même option estclick
ed deux fois.Vous exemple interrompt l'exécution de javascript...
Assurez-vous que votre code est dans le
$(document).ready(function(){ ... });
. De Plus, l'implémentation actuelle de$("#asc").change()
se déclenche uniquement lorsque l'élément avecid
deasc
est sélectionné, et non pas lorsque l'un des boutons radio sont sélectionnés.#asc était juste pour tester, je vais utiliser #tri une fois que j'ai ce travail, mon code ne fonctionne pas car il n'était pas à l'intérieur .prêt, mais votre exemple ne fonctionne pas, même si à l'intérieur .prêt.
L'exemple sur jsfiddle de ne pas fonctionner correctement pour vous? Parce que c'est la mise en œuvre correcte pour un
change
événement à l'aide deon
.OriginalL'auteur Chase
essayer cette
click(fn)
est juste un raccourci pouron('click', fn)
Malheureusement cela ne fonctionne pas non plus...
dites-vous que les raccourcis ne sont pas destinés à être utilisés? 🙂
Je pense que ce qu'il disait, c'est que vous n'avez pas besoin de modifier mon code (éventuellement me faire et d'autres pensent que .sur erreur).
OriginalL'auteur Rajesh
Depuis '#tri' est le buttonset, je pense qu'il devrait être:
Pour sûr, vous devez lier le clic/ changer le cas lorsque le document est prêt, mais en coulisse, vous pouvez cliquer sur le desc bouton et rien ne se passe, bien que l'état de l'asc est en train de changer. Donc je pense qu'il serait mieux de lier l'événement sur l'élément parent.
Comme je l'ai dit dans d'autres commentaires, je n'ai utilisé #asc dans cet exemple, pour des raisons de simplicité.
OriginalL'auteur axel.michel