Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] AJAX jQuery no reconoce mi formulario

Estas en el tema de AJAX jQuery no reconoce mi formulario en el foro de Jquery en Foros del Web. Hola a todos! Tengo varios formularios que intento gestionar con AJAX jQuery. Quiero minimizar el código que uso, así que intento emplear una misma función ...
  #1 (permalink)  
Antiguo 21/05/2016, 20:10
Avatar de berkeleyPunk  
Fecha de Ingreso: febrero-2013
Ubicación: México :C
Mensajes: 565
Antigüedad: 11 años, 2 meses
Puntos: 22
Pregunta AJAX jQuery no reconoce mi formulario

Hola a todos!

Tengo varios formularios que intento gestionar con AJAX jQuery. Quiero minimizar el código que uso, así que intento emplear una misma función AJAX para todos los formularios, pero no me sale. Aquí va lo que llevo:
Código HTML:
 <form id="mi_forma_1">
    <input type="hidden" name="forma" value="mi_forma_1" />
    <input type="submit" value="Enviar" id="1" />
  </form>

  <form id="mi_forma_2">
    <input type="hidden" name="forma" value="mi_forma_2" />
    <input type="submit" value="Enviar" id="2" />
  </form> 

Código Javascript:
Ver original
  1. id_formulario = null;
  2.  
  3.   $("input:submit").click(function(e){
  4.     e.preventDefault();
  5.     id_del_submit     = $(this).attr('id');  // Lo cual obtiene "1" o "2"
  6.     id_formulario = '"#mi_forma_'+id_del_submit+'"';
  7. });
  8.  
  9.  
  10.   $(id_formulario).on("submit", function(e) {
  11.     e.preventDefault();
  12.     var datos = $(id_formulario).serializeArray();
  13.     $.ajax({
  14.       type: "POST",
  15.       dataType: "json",
  16.       url: "process.php",
  17.       data: datos,
  18.       success: function(response) {
  19.         $("#mensaje").text( response.statusResponse );
  20.       },
  21.       complete: function(jqXHR, estado, error) {
  22.         if (estado == "parsererror") {
  23.           $("#mensaje").text( estado );
  24.         }
  25.       }
  26.     });
  27.   });

Resultado: No pasa nada! Al hacer click al submit no se ejecuta AJAX. He realizado ya varias pruebas y veo que la variable id_formulario contiene la cadena "#mi_forma_1" o "#mi_forma_2".

¿Por qué AJAX nunca se ejecuta? Por lo que se ve, la línea
Código Javascript:
Ver original
  1. $(id_formulario).on("submit", function(e) {
no reconoce el valor de id_formulario .

¿Cómo solucionar esto?


Saludos!

Última edición por berkeleyPunk; 21/05/2016 a las 20:52
  #2 (permalink)  
Antiguo 22/05/2016, 08:20
Avatar de berkeleyPunk  
Fecha de Ingreso: febrero-2013
Ubicación: México :C
Mensajes: 565
Antigüedad: 11 años, 2 meses
Puntos: 22
De acuerdo Respuesta: AJAX jQuery no reconoce mi formulario

Me respondo a mí mismo.

Si tenemos varios formularios, sólo hacer lo siguiente:

Código Javascript:
Ver original
  1. $("#mi_forma_1, #mi_forma_2").on("submit", function(e) {
  2.     e.preventDefault();
  3.     var datos = $(this).serializeArray();
  4.     $.ajax({
  5.        //...
  6.     });
  7. });


Etiquetas: jquery-ajax
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:07.