ajax中无法赋值问题的总结以及解决方案
分析:
ajax默认调用了异步操作,即:async: true这个操作是将ajax设置为异步操作,该操作会在data没有值之前就会给变量赋值。
解决方案一:
在ajax中设置同步属性
async: false
解决方案二:
由于解决方法一中改为同步操作,这样网页就会等待数据的到来从而卡顿,可以大概估计查询数据花费的时间(如果可以的话)让给得到数据的代码加段睡眠时间,这样就刚好。
解决方法三:
解决方法二中的方法有些差强人意,(大多数情况下都不会事先知道数据库查询的时间),在使用jq的时候发现一个方法:
Deferred对象:
在写jq ajax的时候代码如下
在某个需要编写的触发时间里面写上