AJAX就绪状态4和状态0

时间:2015-06-01 17:34:03

标签: javascript php ajax

我正在尝试进行AJAX调用(纯JavaScript)以在DB中存储用户。

我的java脚本文件包含以下代码:

var url="interfata_db.php";
    xmlhttp.onreadystatechange=function(){
        alert('ready state ' + xmlhttp.readyState + ' status ' + xmlhttp.status);
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
            alert(xmlhttp.responseText);
        }
    };   
    xmlhttp.open("POST",url,true); 
    xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
    xmlhttp.send("tag=" + tag + "&name=" + nume + "&first_name=" + prenume + "&email=" + email + "&password=" + parola1);

interfata_db.php中设置标题:

header('Content-type: application/json');

我构建了以JSON格式返回的响应:

echo json_encode($response);

问题是当我进行AJAX调用时,readyState = 4的状态为0。 Chrome浏览器工具interfata_db.php似乎已被取消。 Chrome Developer Tool

我还想提一下,如果用户已经存在,用户就会成功存储。

如何获取状态200?

谢谢!

1 个答案:

答案 0 :(得分:2)

您没有取消导致页面离开的操作。您需要使用preventDefault()停止它或返回false以停止默认操作。