当我输入text input
时,我从互联网上获得了一些更新我的网页的代码。
我的代码在
下面function validate(field, query) {
var xmlhttp;
if (window.XMLHttpRequest) { // for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else { // for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState != 4 && xmlhttp.status == 200) {
document.getElementById(field).innerHTML = "Validating..";
} else if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById(field).innerHTML = xmlhttp.responseText;
} else {
document.getElementById(field).innerHTML = "Error Occurred. <a href='index.php'>Reload Or Try Again</a> the page.";
}
}
xmlhttp.open("GET", "validation.php?field=" + field + "&query=" + query, false);
xmlhttp.send();
}
调试后我发现代码运行了两次(afaik)。第一次xmlhttp.readyState
为1,表示正在设置请求。第二次它是4意味着它完成了。所以这就像预期的那样。
问题是它总是返回字段中的Error Occurred
位。原因是xmlhttp.status
保持状态编号404,这意味着找不到它。我不知道为什么它返回404.如果我使用的浏览器很重要,我使用的是最新版本的Safari。我还检查了最新版本的Chrome并遇到了同样的问题。
答案 0 :(得分:0)
确保您的代码实际上是在请求正确的网址。您可以使用大多数现代浏览器的开发者工具执行此操作,包括Chrome的网络标签。