onclick=“return confirm(")” travailler avec $('.de la classe).cliquez sur(function () {});
J'ai cette fonction qui désactive l'entrée une fois que l'utilisateur clique sur:
$('.click-off').click(function () {
var btn = this;
setTimeout(function () { $(btn).attr('disabled', 'disabled'); }, 1);
return true;
});
Et j'ai cette entrée avec un javascript confirmation:
<input type="submit" class="click-off" onclick="return confirm('Are you sure?');" value="Delete">
Même si je clique sur "annuler" dans la boîte de dialogue de confirmation, le $('.cliquez-off").événement click() est appelée, et le bouton est désactivé.
L' $('.cliquez-off").cliquez sur() est utilisé par beaucoup d'entrées, de sorte que la confirmation ne peut pas être à l'intérieur d'elle.
Comment puis-je vérifier le confirmer le retour dans le $('.cliquez-off").cliquez sur l'événement? Ou même empêcher l' $('.cliquez-off").cliquez sur l'événement pour être appelé?
Vous devez vous connecter pour publier un commentaire.
Pourquoi vous avez ces pièces de la logique se séparer en premier lieu? Voici 2 méthodes pour contourner le problème:
Combiner la logique dans une seule méthode:
Utiliser une variable globale (ou d'un objet de préférence):
Vous devriez éviter l'accrochage des actions à la fois avec jquery et onclick, principalement parce que vous allez bientôt être totalement perdu dans votre code.
Ainsi, par exemple, vous pouvez faire ceci:
Et supprimer l'événement onclick. Ainsi, vous aurez tout dans un seul endroit.
Dans votre exemple, vous crochet deux fois à l'événement click, et ils ont tous deux obtenir tiré malgré les résultats de chaque autre.
Essayer de capturer le champ confirmer la désactivation du bouton.
aussi supprimer le onclick