
jquery ajax中不能给变量赋值的原因及解决办法
发布日期:2021-05-08 03:02:39
浏览次数:24
分类:原创文章
本文共 529 字,大约阅读时间需要 1 分钟。
问题
我们在用JQuery的Ajax从后台提取数据后想把它赋值给全局变量,但是却怎么都赋不进,为什么呢?
原因
原因其实很简单,我们用的Ajax是异步操作,也就是async:true(默认情况)
,也就是说在你赋值的时候数据还没提取出来,你当然赋不进去,所以只要改成同步操作,即async:false
就行~
解决方法
var result; $.ajax({ type :"post", url :地址, data :"参数"+参数的值, async :false, success :function(data){ //赋值给全局变量; result = data; }});
以上方法是ajax的同步调用,只有在获取到了data值并赋值给result以后才会返回result完成该方法的调用。若设为async:true,
则会未等到获取data值就已经返回了result。
另一个解决办法就是将你的代码直接写到success方法里。(但通常情况下并不是所有的业务逻辑都可以直接写到success里的)。
注意
如果设定为 async: false,就失去 ajax异步的优点了。
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年03月24日 18时22分39秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
实现一个简易Vue(三)Compiler
2019-03-04
仿小米商城(上)
2019-03-04
自动安装服务2
2019-03-04
HTML 和 CSS 简单实现注册页面
2019-03-04
(SpringMVC)springMVC.xml 和 web.xml
2019-03-04
jQuery中的动画
2019-03-04
1.2.3 项目、项目集、项目组合以及运营管理之间的关系
2019-03-04
【△重点△】LeetCode - 4. 寻找两个正序数组的中位数——二分查找
2019-03-04
LeetCode - 5. 最长回文子串——字符串、动态规划
2019-03-04
全局锁和表锁 :给表加个字段怎么有这么多阻碍?
2019-03-04
二分查找与插入排序的结合使用
2019-03-04
892 三维形体的表面积(分析)
2019-03-04
16 最接近的三数之和(排序、双指针)
2019-03-04
279 完全平方数(bfs)
2019-03-04
875 爱吃香蕉的珂珂(二分查找)
2019-03-04
桌面图标的自动排列图标
2019-03-04
第十一届蓝桥杯python组第二场省赛-数字三角形
2019-03-04
Jquery使用需要下载的文件
2019-03-04
BST中某一层的所有节点(宽度优先搜索)
2019-03-04
广度优先搜索
2019-03-04