Foros del Web » Programando para Internet » Javascript »

Ejecutar function después de un "return true"

Estas en el tema de Ejecutar function después de un "return true" en el foro de Javascript en Foros del Web. Hola a todos, tengo un pequeño problema al enviar un formulario. El caso es que tras validarlo mediante jQuery, quiero vaciar el contenido de el ...
  #1 (permalink)  
Antiguo 17/11/2012, 11:10
Avatar de Adbane  
Fecha de Ingreso: junio-2011
Mensajes: 86
Antigüedad: 13 años, 4 meses
Puntos: 6
Ejecutar function después de un "return true"

Hola a todos, tengo un pequeño problema al enviar un formulario. El caso es que tras validarlo mediante jQuery, quiero vaciar el contenido de el campo "comentario". Normalmente uso este código:

Código PHP:
function validarForm(){
    var 
nombre = $("#name").val();
    var 
email = $("#email").val();
    var 
emailreg = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$/;
    var 
comentario = $("#comment").val();
    
    if(
nombre == ""){
        $(
"#name").css("border","1px solid red");
        return 
false;
    }else if(
email "" || !emailreg.test(email)){
        $(
"#email").css("border","1px solid red");
        return 
false;
    }else if(
comentario == ""){
        $(
"#comment").css("border","1px solid red");
        return 
false;
    }else {
        $(
"#comment").val("");
        return 
true;
    }

La idea es sencilla, quiero que tras validarse y enviarse el form (la página no redirecciona), se borre el contenido del campo "comment", pero con este código, borra el contenido aún cuando no se ha enviado, y claro, no valida, y después del "return true" no ejecuta ningún código.

¿Alguna idea?
__________________
Diseñador web por amor al arte, o al HTML mejor dicho
  #2 (permalink)  
Antiguo 17/11/2012, 11:21
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 16 años, 3 meses
Puntos: 103
Respuesta: Ejecutar function después de un "return true"

pues, haz algo como esto
Código Javascript:
Ver original
  1. if (validarForm()){
  2.  
  3. $.ajax({
  4.         type : 'POST',
  5.         url : '/ajax.php',
  6.         data : $('#formulario').serialize(),
  7.         success : function(response) {
  8.              $("#comment").val("");
  9.                          alert('respuesta: '+response)
  10.         }
  11.     });
  12.  
  13. }

y quitale $("#comment").val(""); de tu función ValidarForm
  #3 (permalink)  
Antiguo 17/11/2012, 11:43
Avatar de Adbane  
Fecha de Ingreso: junio-2011
Mensajes: 86
Antigüedad: 13 años, 4 meses
Puntos: 6
Respuesta: Ejecutar function después de un "return true"

AJAX, como no... tengo que estudiarlo xD

Me ha servido de ayuda, ¡muchas gracias!
__________________
Diseñador web por amor al arte, o al HTML mejor dicho

Etiquetas: formulario, return, true
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 11:22.