Pregunta

Estoy teniendo un pequeño problema con jQuery: Estoy teniendo .submit() definida en un formulario, cuando envíe el formulario haciendo clic en el botón de envío, incluso los disparadores y las cosas funciona sin problemas, sin embargo, cuando se utiliza document.forms[0].submit(), el evento no se disparará, pero la forma somete !! ¿Hay alguna razón por qué? ¿Cómo puedo superar eso?

¿Fue útil?

Solución

Eso es sólo la forma en que funciona -. .submit() llamando a la nativa no desencadena el controlador de eventos javascript

Utilice la .submit() jQuery en su lugar:

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

Otros consejos

Si el formulario de envío es nombrado como esto

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

A continuación, puede enviarlo al hacer esto.

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

Consulta los href="http://docs.jquery.com/Events/submit" grandes ejemplos más.

Hay algunos de nosotros aquí que se ven obligados a usar el código de los sistemas heredados. Estos sistemas son no conformes, y en mi caso en espera de ser actualizado. Sin embargo, cuando varios miles de personas están usando el sistema, simplemente no es posible entrar y cambiar el código para los paquetes de línea de base. Por lo tanto, nos vemos obligados a buscar soluciones alternativas. En mi caso, las formas no tienen identificadores o nombres, así que usar document.forms[0].submit() es una de las únicas opciones.

Esto puede sonar extraño, pero ¿por qué incluso utilizar document.forms[0].submit() cuando se utiliza jQuery ya.

simple sugerencia (tal vez estúpida?): No use el uso document.forms[0].submit() este lugar

$("#hereidofyourform").submit()
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top