js(jquery)通过ajax获取的数据无法赋值给全局变量的原因及解决办法

原创
2020/10/01 22:12
阅读数 154

定义了个全局变量clipstr,然后通过ajax获取到数据赋值给clipstr,死活不成功,最后百度了一番,终于找到答案,原来是ajax时有个选项async,默认值是true,表示异步执行ajax, 异步请求不会阻塞代码的执行,程序在执行ajax代码段的同时,后续的代码也在执行,所以,ajax请求的数据不能赋值给全局变量(赋值之后全局变量没有值),是因为ajax请求还没有执行完后面的代码就执行了。

解决方法如下:

把async值设置为false,表示同步请求,同步请求表示必须等前面的ajax代码段执行完后续的代码才能执行,这样程序从上往下执,保证ajax请求执行完了再给全局变量赋值。如下图:

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部