Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.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成功操作后的对象引用错误-jquery_Javascript_Jquery_Object - Fatal编程技术网

Javascript ajax成功操作后的对象引用错误-jquery

Javascript ajax成功操作后的对象引用错误-jquery,javascript,jquery,object,Javascript,Jquery,Object,在上面的ajax调用中,对象jData返回null。。但如果显示成功,则成功返回对象: var jData = null; function x() { $.ajax({ url : 'http://...", success : function(data) { jData = data; alert(jData); // displays the object } }); return jData; //returns null ?? }; $.ajax()

在上面的ajax调用中,对象jData返回null。。但如果显示成功,则成功返回对象:

var jData = null;

function x() {

$.ajax({
url : 'http://...",
success : function(data) {
    jData = data;
    alert(jData);   // displays the object
}


});
 return jData;  //returns null ??
};
$.ajax()
是异步的。您必须在成功回调中直接使用jData

var jData = null;

function x() {
    $.ajax({
       url : "http://...",
       success : function(data) {
          jData = data;
          alert(jData);   // displays the object
          //do stuff here
       }    
    });
}

Ajax是异步的,您需要从成功回调内部返回jdata。否则,当您返回jdata时,ajax调用尚未返回,jdata也未被赋值。

您正在将数据从块的作用域中取出,因此它不会发生,请在成功操作中返回jdata

这将不起作用。他不能从成功回调中返回jData,因为JS不会等待回调函数