JavaScript événement OnBlur empêche formulaire HTML de soumis
Considérer la forme suivante:
<form action="/a" method="post">
<input name="x" type="text" onblur="myonblur(e)" />
<input name="y" type="text" />
<input name="submit" type="submit" value="Submit" />
</form>
Lorsque le focus est sur l'élément avec le nom "x" et l'utilisateur appuie sur le bouton soumettre, événement onblur les incendies, mais le formulaire n'est PAS soumis. Est-il possible de faire bouton soumettre fonctionner comme prévu si j'ai onblur événements dans mon formulaire?
OriginalL'auteur Artem | 2009-04-13
Vous devez vous connecter pour publier un commentaire.
Pensez à optimiser votre
onBlur()
méthode prend donc moins de temps à s'exécuter. Si votre formulaire est empêché d'arriver soumis, il se peut que laonBlur()
est trop long et bloque le navigateur de faire autre chose.Vous pouvez également utiliser le
onChange()
méthode au lieu deonBlur()
. Qui peut mieux fonctionner pour vous.Vous devez utiliser asynchrone des requêtes AJAX qui s'exécutent en arrière-plan et ne pas se bloquer le navigateur. En utilisant le onSubmit continuera de fonctionner même si la requête ajax n'est pas fini. Bibliothèque Jquery ne asynchrone par défaut, avoir un coup d'oeil à docs.jquery.com/Ajax/jQuery.ajax
OriginalL'auteur Click Upvote
Essayez d'ajouter
après l'appel de votre onBlur fonction. Le problème que vous rencontrez avec peut-être en raison de "return false" prévention des gestionnaires d'événements.
OK. C'était juste une possibilité de bien 😉
OriginalL'auteur BYK