Este es mi código de validación.
EDITADO: He agregado la línea 48 para comprobarlo.
Código Javascript:
Ver original
$(document).ready(function(){ //Variables globales var usr = $("#username"); var pass = $("#password"); var b_usr = false; //Username Check function validateLogin(){ usr = $("#username").val(); pass = $("#password").val(); $.ajax({ type: "POST", url: "checklogin.php", data: "username=" + usr + "&password=" + pass, success: function(msg){ $("#status").ajaxComplete(function(event, request, settings){ if(msg == 'OK') { $("#username").removeClass('object_error'); // if necessary $("#username").addClass("object_ok"); $("#status").html(''); b_usr = true; } else { $("#username").removeClass('object_ok'); // if necessary $("#username").addClass("object_error"); $(this).html(msg); b_usr = false; } }); } }); } //Validation on submit. // Envio de formulario $("#signupForm").submit(function(){ validateLogin(); alert(b_usr); if(b_usr){ return true; } else{ return false; } }); });
La primera vez que pulso 'b_usr' es falso, y la segunda vez que pulso verdadero (en caso de que ponga un user y password correctos claro).
¿Por qué ocurre eso?
Gracias de antemano.