我打算使用 AJAX 来触发一个 java servlet 方法,该方法检查电子邮件是否已经在我们的系统中。然后当这完成时,如果电子邮件不在我们的系统中,它将显示一个覆盖以允许用户接受 T&C,如果它已经在系统中,它将提示他们否则。作为 AJAX 的新手,虽然我对这些完成/失败/总是如何工作感到困惑。如何触发此 emailvalidation 方法,然后如何定义它是否成功?
问问题
1361 次
1 回答
0
您需要以下代码来使用 AJAX 验证电子邮件:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function emailCheck(){
var email = document.getElementById('email').value;
var xmlhttp=new XMLHttpRequest();
var params = "email="+email;
xmlhttp.open("POST","emailcheck.jsp",true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.setRequestHeader("Content-length", params.length);
xmlhttp.setRequestHeader("Connection", "close");
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4 && xmlhttp.status==200)
{
if(xmlhttp.responseText == '0'){
document.getElementById('msg').innerHTML='Email already exists.';
}
else{
document.getElementById('msg').innerHTML='Email valid.';
document.getElementById('tnc').style.display='block';
}
}
}
xmlhttp.send(params);
}
</script>
</head>
<body>
<form>
Email: <input type="email" name="email" id="email" onblur="emailCheck()" required><div id="msg"></div>
<br>
<div id="tnc" style="display: none;">
<!-- T&C here -->
</div>
</form>
</body>
</html>
该onblur
事件将调用emailCheck()
函数,该函数包含执行所需任务的 AJAX 代码。另请注意,电子邮件是使用 POST 方法发送的。0
如果电子邮件已经存在,您的 emailcheck.jsp 应该简单地输出(或打印) 。
于 2013-11-06T15:57:22.973 回答