遇到问题-----------getJSON为什么不能给外部变量赋值?或者getJson赋值无效

前端之家收集整理的这篇文章主要介绍了遇到问题-----------getJSON为什么不能给外部变量赋值?或者getJson赋值无效前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。



//getJSON 内部已经赋值给count,alert出数据来看看是不是0


var count=0;  
$.getJSON(sUrl,{"ran": new Date().getDate()},function(jsonData){  
if(!jsonData.count){return;}  
count=jsonData.count;  
})  
alert(count); 

得到的数据还是0,sUrl里赋值是100。

百度谷歌了一下,发现jquery中ajax默认是异步方式,所以会有延迟,如果一定要在外边调用,可以设置成同步的方式。

//设置成同步  
  $.ajaxSetup({async: false}); 

加入这个代码后就可以了


var count=0;  
$.ajaxSetup({async:false});  
$.getJSON(sUrl,function(jsonData){  
if(!jsonData.count){return;}  
count=jsonData.count;  
})  
alert(count);  

猜你在找的Json相关文章