0
我有以下代码来验证密码匹配和电子邮件存在ajax调用。 返回false后代码继续执行.`如果没有电子邮件ID,emailexist函数返回0,如果电子邮件ID存在,则返回1。JavaScript执行后返回false继续
在表单提交
<form action="/home" method="post" onsubmit="return validateform();">
function validateemail(){
var email_id = $("#email").val();
if(email_id)
{
$.ajax({
type: 'post',
url: '/emailexist',
data: {
email:email_id,
},
success: function (response) {
if(response== 1)
{
$("#email_status").html("email already exist");
return false;
}
else if(response == 0){
return true;
}
}
});
}
function validatepassword()
{
var pass = $("#password").val();
var cofirmpass = $("#confirmpassword").val();
if(pass != cofirmpass)
{
alert("password does not match!");
return false;
}
else{
return true;
}
}
function validateform()
{
if(validatepassword() && validateemail())
{
return true;
}
else
{
return false;
}``
}
</script>`
请检查'preventdefault'功能。 – Unbreakable
这是因为您正在进行AJAX调用。你应该在'#email'的'blur'事件上调用'validateemail'# –
@MilanChheda:使用$(“#email”)。blur(function()。并使用d focus()来确保控制回到email字段谢谢。 – Kishor