Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

194
Views
Cómo pausar un envío de <formulario>, hacer algo de trabajo y luego continuar con el envío

Tengo que pasar un formulario a una ruta, pero antes de eso quiero usar un modal para solicitar la confirmación del usuario. Estoy usando preventDefault() para detener el envío y manejar la confirmación, pero ahora necesito continuar con el envío normal del formulario:

 <script type="text/javascript"> $(".btn-close").click((x) => { x.preventDefault(); var text = $(this).val(); $("#modal_body").html(text); $("#removeConfirm").click(() => { //$(this).submit(); //I need to continue with the form submission here console.log("Confirmed!"); }); }); </script>

"texto" es un valor que estoy pasando al modal;

"#removeConfirm" es el botón de confirmación en el modal;

Intenté "$(this).submit()" pero no funciona, ¿alguna idea?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

preventDefault() no impedirá que se envíe su formulario.

Es probable que sea más fácil hacer que el controlador de envío se active desde el modal en sí, ya que realmente no puede tener los datos colgados en el limbo como está proponiendo (a menos que escriba los valores en una tienda de orden superior, por supuesto).

about 4 years ago · Juan Pablo Isaza Report

0

$(this).submit() no funciona porque "this" es el botón $(".btn-close") y no el formulario.

Para el formulario, en lugar de usar un botón de envío, use un botón con una función Javascript y administre allí el envío, algo como:

 <label>Name</label> <input type="text" name="name" value="" /> <br/> <label>Phone</label> <input type="text" name="phone" value="" /> <br/> <a id="processBtn" class="btn btn-default" href="javascript:;" >Process</a>
 <script> $('#processBtn').click(function(e){ e.preventDefault(); if (doStuff()) { console.log("there we go!"); $("#waitform").submit(); } }); function doStuff() { console.log("i'm sending the form in a sec"); return true; //you can also add a condition and return false if you don't want to submit the form } </script>
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!