Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我不能用ajax获得responseText_Javascript_Ajax_Go - Fatal编程技术网

Javascript 为什么我不能用ajax获得responseText

Javascript 为什么我不能用ajax获得responseText,javascript,ajax,go,Javascript,Ajax,Go,我想用ajax做一些类似于注册的事情。我只是使用ajax请求url“/check”,它返回“{success:1}”,但是当我使用res=request.responseText时,res什么都不是。然而,我console.log(request.responseText),它变成了{success:1},我如何获得值,我的代码出了什么问题 在我的regist.gtpl中 在我的ajax.js中 问题似乎出在Get()Javascript函数中: Get = function (url,cb){

我想用ajax做一些类似于注册的事情。我只是使用ajax请求url“/check”,它返回“{success:1}”,但是当我使用res=request.responseText时,res什么都不是。然而,我console.log(request.responseText),它变成了{success:1},我如何获得值,我的代码出了什么问题

在我的regist.gtpl中

在我的ajax.js中


问题似乎出在
Get()
Javascript函数中:

Get = function (url,cb){
    request.open("GET",url);
    request.onreadystatechange = cb(request);
    request.send();
}
您正在将
onreadystatechange
属性设置为调用
cb
的结果。此时,请求尚未发送,因此没有要读取的响应文本。以下是解决此问题的一种可能方法:

request.onreadystatechange = function() { cb(request); };

您是否从试图通过XmlHTTPRequest访问的同一台服务器上提供网页?如果不是,那么浏览器可能将其视为跨源请求并阻止响应
var Get

(function(){var request = false

function createRequest() {

  try {
    request = new XMLHttpRequest();
  } catch (trymicrosoft) {
    //两种微软的XMLHttpRequest
    try {
      request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (othermicrosoft) {
      try {
        request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (failed) {
        request = false;
      }
    }
  }
  if (!request)
    alert("Error initializing XMLHttpRequest!");
}

createRequest();

Get = function (url,cb){
    request.open("GET",url);
    request.onreadystatechange = cb(request);
    request.send();
}

})();
Get = function (url,cb){
    request.open("GET",url);
    request.onreadystatechange = cb(request);
    request.send();
}
request.onreadystatechange = function() { cb(request); };