我只是在我的浏览器中进行一些测试以弄清楚发生了什么 - 一切似乎都正常工作直到这一行:
responseJson = JSON.parse(localReq.responseText);
当我评估这个部分时:JSON.parse(localReq.responseText);我得到了合适的价值。但是,当我评估" responseJson"它给了我一个未被捕获的参考错误,我无法弄清楚原因。
function login()
{
userName = document.getElementById("_name").value;
password = document.getElementById("_password").value;
data = "userName=" + userName + "&" + "password=" + password;
localReq = new XMLHttpRequest();
localReq.open("POST", "http://universe.tc.uvu.edu/cs2550/assignments/PasswordCheck/check.php", true);
localReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
localReq.send(data);
response = document.getElementById("_login");
if (localReq.status == 200)
{
responseJson = JSON.parse(localReq.responseText);
}
}
答案 0 :(得分:1)
您需要在AJAX请求上使用事件侦听器,以通过回调异步处理来自服务器的响应。如果不这样做,您将在服务器响应之前检查响应代码Event
。
200
请参阅此jsFiddle:http://jsfiddle.net/wwsj3r4q/