2010-12-11 4 views
0

J'ai créé quelques commentaires paginés ajax dans WordPress. Malheureusement, si l'utilisateur a cliqué sur le bouton de réponse et qu'il clique ensuite sur une autre page de commentaire, le formulaire de commentaire disparaît. Quoi qu'il en soit, simple question: Déclencher la fonction "Annuler la réponse" de mon code chaque fois que l'utilisateur clique sur une nouvelle page ajax résoudrait effectivement le problème en faisant revenir le formulaire à sa position d'origine.Appel d'une fonction .onClick() déjà définie à partir de jQuery

Comment déclencher cancel.onclick() à partir de mon propre code facilement? J'allais juste dupliquer les commandes et créer une nouvelle fonction, mais je pensais qu'il pourrait y avoir un moyen plus simple d'enregistrer quelques octets!

Voici le code source: http://core.trac.wordpress.org/browser/trunk/wp-includes/js/comment-reply.dev.js

Répondre

1

Essayez quelque chose comme ceci:

$('#id_of_your_cancel_button').click(); 
// same thing as $('#id_of_your_cancel_button').trigger('click'); 

Si la logique « annuler » doit être utilisé dans de multiples contextes, il serait peut-être mieux si elle vit dans sa propre déclaration de fonction nommée, plutôt que l'expression de la fonction anonyme comme dans votre exemple. Cela vous donnera la possibilité de faire quelque chose comme ceci:

function myCancelCode(){ 
    do_stuff(); 
} 

ensuite dans votre objet addComment:

cancel.onclick = myCancelCode; 

et de nulle part ailleurs:

if(somethingHappens){ 
    myCancelCode(); 
} 
Questions connexes