Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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 无法更改JQuery ajax函数中的全局变量_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 无法更改JQuery ajax函数中的全局变量

Javascript 无法更改JQuery ajax函数中的全局变量,javascript,jquery,ajax,Javascript,Jquery,Ajax,上面是我的代码片段,我需要将ajax响应数据存储在全局变量dataRsp中,但我没有做到这一点。我对JS和jquery中的变量范围感到非常困惑。非常感谢。将您的警报放在成功回调中 $( document ).ready(function() { function doAjax( time_from, time_to ){ var dataRsp; $.ajax({ url: "/query/"+time

上面是我的代码片段,我需要将ajax响应数据存储在全局变量dataRsp中,但我没有做到这一点。我对JS和jquery中的变量范围感到非常困惑。非常感谢。

将您的警报放在成功回调中

 $( document ).ready(function() {
        function doAjax( time_from, time_to ){
            var dataRsp;
            $.ajax({
              url: "/query/"+time_from+"/"+time_to,
              type: "GET",
              dataType: "json",
              success: function(data){ dataRsp = data; },
            });
            alert(JSON.stringify(dataRsp));
        };
      doAjax(0,0);
  }

或者另一个选项是添加
async:false
参数。而且,不需要在
成功后使用

将您的警报放入成功回调中

 $( document ).ready(function() {
        function doAjax( time_from, time_to ){
            var dataRsp;
            $.ajax({
              url: "/query/"+time_from+"/"+time_to,
              type: "GET",
              dataType: "json",
              success: function(data){ dataRsp = data; },
            });
            alert(JSON.stringify(dataRsp));
        };
      doAjax(0,0);
  }
    $( document ).ready(function() {
        function doAjax( time_from, time_to ){
            var dataRsp;
            $.ajax({
              async: false,
              url: "/query/"+time_from+"/"+time_to,
              type: "GET",
              dataType: "json",
              success: function(data){ 
                  dataRsp = data; 
                  return(JSON.stringify(dataRsp)); 
              }
            });

        };
      var x =doAjax(0,0);
      alert(x);
  }

或者另一个选项是添加
async:false
参数。而且,不需要在
成功后使用

将您的警报放入成功回调中

 $( document ).ready(function() {
        function doAjax( time_from, time_to ){
            var dataRsp;
            $.ajax({
              url: "/query/"+time_from+"/"+time_to,
              type: "GET",
              dataType: "json",
              success: function(data){ dataRsp = data; },
            });
            alert(JSON.stringify(dataRsp));
        };
      doAjax(0,0);
  }
    $( document ).ready(function() {
        function doAjax( time_from, time_to ){
            var dataRsp;
            $.ajax({
              async: false,
              url: "/query/"+time_from+"/"+time_to,
              type: "GET",
              dataType: "json",
              success: function(data){ 
                  dataRsp = data; 
                  return(JSON.stringify(dataRsp)); 
              }
            });

        };
      var x =doAjax(0,0);
      alert(x);
  }

或者另一个选项是添加
async:false
参数。而且,不需要在
成功后使用

将您的警报放入成功回调中

 $( document ).ready(function() {
        function doAjax( time_from, time_to ){
            var dataRsp;
            $.ajax({
              url: "/query/"+time_from+"/"+time_to,
              type: "GET",
              dataType: "json",
              success: function(data){ dataRsp = data; },
            });
            alert(JSON.stringify(dataRsp));
        };
      doAjax(0,0);
  }
    $( document ).ready(function() {
        function doAjax( time_from, time_to ){
            var dataRsp;
            $.ajax({
              async: false,
              url: "/query/"+time_from+"/"+time_to,
              type: "GET",
              dataType: "json",
              success: function(data){ 
                  dataRsp = data; 
                  return(JSON.stringify(dataRsp)); 
              }
            });

        };
      var x =doAjax(0,0);
      alert(x);
  }
或者另一个选项是添加
async:false
参数。而且,不需要在
成功后执行

    $( document ).ready(function() {
        function doAjax( time_from, time_to ){
            var dataRsp;
            $.ajax({
              async: false,
              url: "/query/"+time_from+"/"+time_to,
              type: "GET",
              dataType: "json",
              success: function(data){ 
                  dataRsp = data; 
                  return(JSON.stringify(dataRsp)); 
              }
            });

        };
      var x =doAjax(0,0);
      alert(x);
  }
}

}

}


}

您没有失败,它只是异步的!您可能的副本并没有改变它,它只是异步的!您可能的副本并没有改变它,它只是异步的!您可能的副本并没有改变它,它只是异步的!如果我想要函数doAjax返回dataRsp,并且我需要使用函数外部的数据,那么如何更改它的可能重复。例如,我写x=doAjax(0,0),然后警告x。如果我想要函数doAjax返回dataRsp,并且我需要使用函数外部的数据,那么如何更改它。例如,我写x=doAjax(0,0),然后警告x。如果我想要函数doAjax返回dataRsp,如何更改它,我需要使用函数外部的数据。例如,我写x=doAjax(0,0),然后警告x。如果我想要函数doAjax返回dataRsp,如何更改它,我需要使用函数外部的数据。例如,我写x=doAjax(0,0),然后提醒x。请提供有关您答案的详细信息。请提供有关您答案的详细信息。请提供有关您答案的详细信息。请提供有关您答案的详细信息。