Javascript XMLHttpRequest状态返回404

Javascript XMLHttpRequest状态返回404,javascript,ajax,xmlhttprequest,Javascript,Ajax,Xmlhttprequest,我有一些来自互联网的代码,当我输入文本输入时,这些代码会更新我的网页 我的代码在下面 function validate(field, query) { var xmlhttp; if (window.XMLHttpRequest) { // for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // for IE6, IE5 xm

我有一些来自互联网的代码,当我输入
文本输入时,这些代码会更新我的网页

我的代码在下面

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();
}
函数验证(字段,查询){
var-xmlhttp;
如果(window.XMLHttpRequest){//IE7+、Firefox、Chrome、Opera、Safari
xmlhttp=新的XMLHttpRequest();
}else{//对于IE6,IE5
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readyState!=4&&xmlhttp.status==200){
document.getElementById(field).innerHTML=“正在验证..”;
}else if(xmlhttp.readyState==4&&xmlhttp.status==200){
document.getElementById(field).innerHTML=xmlhttp.responseText;
}否则{
document.getElementById(field).innerHTML=“发生错误。页面。”;
}
}
open(“GET”、“validation.php?field=“+field+”&query=“+query,false”);
xmlhttp.send();
}
调试之后,我发现代码运行了两次(afaik)。第一次
xmlhttp.readyState
为1,表示请求正在设置中。第二次是4意味着它是完整的。因此,这是工作的预期


问题是它总是返回字段中出现的
错误
位。原因是
xmlhttp.status
保留了状态号404,这意味着找不到它。我不知道它为什么返回404。如果我使用的浏览器很重要,那么我使用的是最新版本的Safari。我还检查了最新版本的Chrome,发现了同样的问题。

确保您的代码实际请求了正确的URL。您可以使用大多数现代浏览器的开发工具,包括Chrome的“网络”选项卡来完成此操作。

请查看此链接:使用Chrome的“开发工具”的“网络”选项卡来查看您的代码是否请求了正确的URL。@Seventoes,如果您需要一些代表,请将此作为答案发布,我可以完成此问题。我使用开发工具发现
xmlhttp.open(“GET”,“validation.php?field=“+field+”&query=“+query,false”)
在默认目录中启动,文件位于
/scripts/validation.php
。在
验证前面添加
/scripts/
。php
修复了它。完成!Chrome的开发工具在进行任何类型的web开发时都是非常宝贵的。在开发:D时,它应该一直处于打开状态