jQuery里的$.getJSON返回问题

来源:13-15 本章小结

Caeser110

2019-01-30

老师好,在JS里我想一次GET请求获取全部需要的JSON数据

var allObj={};
$.getJSON(getAllListUrl,function(data){
 allObj=data.allListObj;
});
console.log(allObj);

我经过调试发现,该方式是返回的,也就是执行了$.getJSON之后就直接执行了打印操作,而且GET请求还未结束,所以打印结果为空,在打印前sleep了几秒之后,打印结果就不为空,我想问问老师,有没有不返回的方式,就是执行问GET请求之后再执行后面的代码?

写回答

1回答

翔仔

2019-01-30

同学好,有多种方式,

比如说可以

while(true){
if(allObj != undefined) break;
}
console.log(allObj);

也可以换成ajax模式,把mode改成sync就是同步执行完再执行下一步的模式

$.ajax({ 
        type: "post", 
       url: "path", 
       cache:false, 
       async:false, 
        dataType: ($.browser.msie) ? "text" : "xml", 
         success: function(xmlobj){ 
        } 
});


0
2
翔仔
回复
Caeser110
同学加油:)
2019-01-30
共2条回复

Java双版本(SSM到SpringBoot)校园商铺全栈开发

SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需

5113 学习 · 8144 问题

查看课程