Ajax 如何等待返回结果再执行后边操作
Ajax分为同步请求和异步请求,默认为异步请求
同步请求和异步请求区别有:
代码执行规则不同;
现成操作数不同;
效率不同;
解释:
同步执行需要等待服务器响应完成再执行下一步;异步执行下一个线程不需要等待执行完就可以开始执行。
举例:
var flag = false; $.ajax({ url: 'member/check', type: 'GET', dataType: 'json', async:false, success: function (data) { if(data.status == 0){ layer.load(1, {shade: [0.5, '#fff']}); login(); return false; } else if(data.status == 2) { layer.load(1, {shade: [0.5, '#fff']}); window.location.href='/test'; return false; } else if(data.status == 1){ flag = true; } else { layer.alert('undefined'); } }, error: function () { //console.log(submit_url); layer.msg('请求异常', { icon: 5 }); } }); //需要等待上边代码执行完之后再执行这段 if(flag){ up(); }
我需要ajax 执行的结果来赋值给flag,所以需要等待ajax执行完成之后才能执行下方判断,所以 ajax需要设置成同步,在ajax中加上代码
async:false,
即可
文章版权声明
1、本网站名称:阿V编程
2、本站永久网址:https://www.1892zyw.com
3、本网站的部分文章内容/部分资源可能来源于网络,仅提供给大家学习或参考,如有侵权,请联系站长QQ进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,如有发现请向站长举报