加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

为什么ajax中加载的数据无法赋值给变量

发布时间:2020-12-15 21:04:47 所属栏目:百科 来源:网络整理
导读:在项目开发中时常会碰到在ajax中加载的数据再次取出是确发现总也取不到值,如下面: var myvar = 0; function ajaxLoadData() { $.getJSON("useraction.action",{id: id,r:Math.random()},function(data){ if(data != null) { myvar = data; ...............

在项目开发中时常会碰到在ajax中加载的数据再次取出是确发现总也取不到值,如下面:

var myvar = 0;

function ajaxLoadData()

{

$.getJSON("useraction.action",{id: id,r:Math.random()},function(data){

if(data != null)

{

myvar = data;

.................

}

});

alert(myvar);

}

如上代码如果运行的话,会发现弹出的信息有可能是没有被赋值,而实际上data是有值的,对于初学者而言估计就有些感觉莫名其妙,其实经过研究可以发现alert的地方并不是在ajax请求的方法体内,我们知道ajax的请求默认是以异步传输的,那么运行这段代码的时候不管ajax请求是否已经返回值,程序都要顺序向下执行,从而导致变量没有被赋值,所以如果要想让变量赋到值必须将其写在ajax请求方法内,即getJSON内。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读