Je développe un peu de jQuery, mais je suis un débutant donc c'est un peu gonflé et pas très élégant. Fondamentalement, je veux que la valeur d'un cookie soit annulée lorsque l'un des deux formulaires est soumis ou que l'on clique sur le bouton d'envoi. Mais je ne sais pas comment consolider les conditions de la fonction pour que je n'ai d'écrire la fonction une fois, donc le mieux que je puisse faire est la suivante:jQuery - Déclencheurs multiples pour la même fonction
$('form#searchform-basic').submit(function() {
$.cookie('tab_cookie', null);
});
$('form#searchform-basic a.search').click(function() {
$.cookie('tab_cookie', null);
});
$('form#searchform-advanced').submit(function() {
$.cookie('tab_cookie', null);
});
$('form#searchform-advanced input#search-button-submit').click(function() {
$.cookie('tab_cookie', null);
});
Il doit y avoir une meilleure façon, droite?
Et avant que quelqu'un ne le demande, oui, vous penseriez que vous auriez seulement besoin de savoir quand les formulaires sont soumis. Mais si vous omettez les événements de clic, cela signifie que la fonction ne s'exécute pas lorsque vous cliquez sur les boutons d'envoi. Je ne sais pas pourquoi c'est comme ça, c'est juste.
Merci! C'est presque parfait, sauf que j'ai trouvé par essais et erreurs que la séparation des identificateurs avec des guillemets simples ET des virgules au lieu de simples virgules n'était pas la syntaxe correcte. En outre, j'espérais qu'il y aurait un moyen de combiner les événements .click() et .submit() en un seul, comme dans "Si soumettre OU cliquez sur le bouton, puis effacer le cookie". – Tom
Merci @Tom, j'ai édité pour corriger la syntaxe. Autant que je sache, vous ne pouvez pas combiner les deux événements différents en une seule déclaration. – Marcie