为什么我的浏览器会说"未被捕获的referenceerror"这里?

时间:2015-11-01 05:25:31

标签: javascript json ajax

我只是在我的浏览器中进行一些测试以弄清楚发生了什么 - 一切似乎都正常工作直到这一行:

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);
   }



}

1 个答案:

答案 0 :(得分:1)

您需要在AJAX请求上使用事件侦听器,以通过回调异步处理来自服务器的响应。如果不这样做,您将在服务器响应之前检查响应代码Event

200

请参阅此jsFiddle:http://jsfiddle.net/wwsj3r4q/