我在我的索引中有用户注册表单的模式。 我创建一个JavaScript时,buttom保存点击。 当用户出现错误时,警报将显示在模式中,但会重定向其他页面。preventDefault之前devise用户身份验证
我会在用户有错误时重定向页面。
这是javascript和ajax。
$("#update").click(function(e){
if(!validarEmail()){
$("#divalerta").addClass("alert-danger");
$("#divalerta").removeClass("alert-success");
var j = $("<p id=\"alerta\"><span class=\"glyphicon glyphicon-exclamation-sign\"></span>Formato de email incorrecto</p>");
mostrarAlerta(j);
e.preventDefault();
return;
}
if($("#newpass").val() != $("#retypepass").val()){
$("#divalerta").addClass("alert-danger");
$("#divalerta").removeClass("alert-success");
var j = $("<p id=\"alerta\"><span class=\"glyphicon glyphicon-exclamation-sign\"></span>Las contraseñas no concuerdan</p>");
mostrarAlerta(j);
e.preventDefault();
return;
}
var datos = {};
datos['accion'] = "ingresar";
datos['nombre'] = $("#nombre").val();
datos['apellido'] = $("#apellido").val();
datos['email'] = $("#email").val();
datos['pass'] = $("#newpass").val();
//var params={'datos' : datos};
$.ajax({
method: "POST",
async: false,
data: datos,
url: "/",
success: function(response){
var arr = response.split("-");
if(arr[0]=="ok"){
$("#divalerta").removeClass("alert-danger");
$("#divalerta").addClass("alert-success");
$("#update").prop('disabled',true);
}
else{
$("#divalerta").addClass("alert-danger");
$("#divalerta").removeClass("alert-success");
}
var j = $("<p id=\"alerta\"><span class=\"glyphicon glyphicon-exclamation-sign\"></span>"+arr[1]+".</p>");
mostrarAlerta(j);
}
});
});
谢谢男人,我解决了它 – user3486836