JQuery中使用Ajax赋值给全局变量失败异常的解决方法
投稿:whsnow
用JQuery的Ajax从后台提取数据后想把它赋值给全局变量,怎么都赋不进,原因是数据还没提取出来,你当然赋不进去
我们在用JQuery的Ajax从后台提取数据后想把它赋值给全局变量,但是却怎么都赋不进,为什么呢?
原因其实很简单,我们用的Ajax是异步操作,也就是说在你赋值的时候数据还没提取出来,你当然赋不进去,所以只要改成同步操作就行~
方法1:先设置同步在进行Ajax操作
//在全局或某个需要的函数内设置Ajax异步为false,也就是同步 $.ajaxSetup({ async :false}); //然后再进行你的Ajax操作 $.post(地址,参数,function(data, status){if(status =="success"){//赋值给全局变量}else{ alert("wrong");}});
方法2:直接用$.ajax
$.ajax({ type :"post", url :地址, data :"参数"+参数的值, async :false, success :function(data){//赋值给全局变量;}});
实例代码:
您可能感兴趣的文章:
- jQuery Ajax Post 回调函数不执行问题的解决方法
- Javascript基于AJAX回调函数传递参数实例分析
- ajax回调函数中使用$(this)取不到对象的解决方法
- ajax请求返回的数据看不到回调函数没有执行也没报错
- 解决ajax回调函数返回的字符串乱码问题
- ajax异步回调函数中给外部变量赋值的问题探讨
- ajax JSONP请求处理回调函数jsonpCallback区分大小写
- jQuery Tips 为AJAX回调函数传递额外参数的方法
- ajax回调函数参数传递正确方法
- ajax给全局变量赋值问题解决示例
- JQuery中使用Ajax赋值给全局变量异常的解决方法
- jquery ajax修改全局变量示例代码
- Ajax获取回调函数无法赋值给全局变量的问题