Question

Je vais avoir un petit problème avec jQuery: Je vais avoir .submit() défini sur un formulaire, lorsque je soumets le formulaire en cliquant sur le bouton d'envoi, les déclencheurs et même les choses fonctionne bien, cependant, lorsque j'utilise document.forms[0].submit(), l'événement ne soit pas déclenchée, mais la forme !! soumet Y at-il raison? Comment puis-je surmonter cela?

Était-ce utile?

La solution

C'est juste la façon dont cela fonctionne -. Appeler le .submit() natif ne déclenche pas le gestionnaire d'événements javascript

Utilisez plutôt la .submit() jQuery:

$('form:first').submit();

Autres conseils

Si est nommé comme la forme soumettre cette

<form method="POST" id="the_waffle_form">

Ensuite, vous pouvez le soumettre en faisant cela.

$("#the_waffle_form").submit();

Vérifiez les pour des exemples plus grands.

Il y a certains d'entre nous ici qui sont forcés d'utiliser le code des systèmes existants. Ces systèmes ne sont pas conformes, et dans mon cas en attente d'être mis à jour. Mais lorsque plusieurs milliers de personnes utilisent le système, il est tout simplement pas possible d'aller et de modifier le code pour les paquets de base. Donc, nous sommes obligés de trouver des solutions de contournement. Dans mon cas, les formulaires ne sont pas d'ID ou le nom, donc l'utilisation document.forms[0].submit() est l'une des seules options.

Cela peut sembler étrange, mais pourquoi même utilisez-vous document.forms[0].submit() lorsque vous utilisez jQuery déjà.

suggestion simple (peut-être stupide?): Ne pas utiliser ce document.forms[0].submit() utiliser à la place

$("#hereidofyourform").submit()
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top