我的部分验证码存在问题。在这里。
function isEmailValid(email) {
if( email == "") {
document.getElementById("emailMsg").innerHTML="Email cannot be empty";
}
else {
var emailRegexStr = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
if (!emailRegexStr.test(email)) {
document.getElementById("emailMsg").innerHTML="Invalid email";
}
else {
xmlhttp = getHTTPObject();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("emailMsg").innerHTML = xmlhttp.responseText;
if(xmlhttp.responseText == "Correct !" ) {
return true;
}
else {
return false;
}
}
}
xmlhttp.open("GET","includes/register_function.php?email="+email,true);
xmlhttp.send();
}
}
}
以上代码的以下部分无法正常工作。
if (xmlhttp.responseText == "Correct !") {
return true;
}
else {
return false;
}
可能是一个愚蠢的错误我是PHP + AJAX的新手。
这是相关的PHP代码
if (isset($_GET['email'])) {
$email=$_GET['email'];
if (!isUserExistsByEmail($email)) {
echo "Correct !";
} else {
echo "Email already exisits";
}
}
这里是gethttpobject函数
function getHTTPObject(){
if (window.ActiveXObject) return new ActiveXObject("Microsoft.XMLHTTP");
else if (window.XMLHttpRequest) return new XMLHttpRequest();
else {
alert("Browser does not support AJAX.");
return null;
}
}
我需要知道如何为同步场景更改getHTTPObject函数。
感谢。