He intentado evitar que una página ejecute submit después de una validación de ajax con jQuery pero no ha sido posible que funcione.
He colocado el evento preventDefault, pero no funciona dentro de un if, si lo dejo fuera si funciona.
Ya he probado también con: return false, es más los de la validación de los campos si funciona.
Agradezco de antemano la colaboración que me puedan brindar.
Mi código es:
$(document).ready(function()
{
$("#btnAceptar").click(function(event)
{
var vContinua = true;
if($("#txtUsuario").val().length == 0)
{
$("#txtUsuario").focus();
alert("Por favor ingrese el Usuario");
return false;
}
if($("#txtPassword").val().length == 0)
{
$("#txtPassword").focus();
alert("Por favor ingrese la Contraseña");
return false;
}
$.ajax ({
type: "POST",
url: "cAcceso.php",
data: {txtUsuario: $("#txtUsuario").val(), txtPassword: $("#txtPassword").val()},
success: function(vRetorno)
{
var msgRetorno = jQuery.parseJSON(vRetorno);
if(msgRetorno.vCodErro != 0)
{
vContinua = false;
alert(msgRetorno.vDesErro);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
alert("Error de Ejecución de Acceso!!!");
}
});
if(vContinua != true)
{
event.preventDefault();
}
});
});