关于ajax中async参数的感悟-阿里云开发者社区

开发者社区> 桃子红了呐> 正文

关于ajax中async参数的感悟

简介:
+关注继续查看

async,这个参数默认为true。

就是异步去处理信息。

当把它设置为false的时候,就是同步去处理数据了。

复制代码
var current_lead_id = '<?php echo $current_lead_id;?>';
            var res = '';
            datas = "action=reset_current_phone&lead_id="+current_lead_id;
            $.ajax({
                type:'post',
                url: "send.php",
                data: datas,
                async:false,
                success: function(json) {
                     res = json.counts;
                },
                error: function(XMLHttpRequest, textStatus) {
                    alert("页面请求错误,请检查重试或联系管理员!\n" + textStatus);
                }
            });
            return res;
复制代码

同步的时候,能够获取到res的值。异步的时候,就获取不到了。

第二点,同步的时候,只要这样写,就会执行reset_current_phone中的代码,最后才进行跳转。

复制代码
function do_back(){
            var opt = '<?php echo $opt;?>';
            if(opt == 'auto'){
                // 跳转之前,处理一些事情
                res = reset_current_phone();
                javscript: window.history.go(-1);
            }else{
                javscript: window.history.go(-1);
            }
        }
复制代码

而异步的时候,直接就跳转了,reset_current_phone中的ajax并没有执行完毕。

需要这样写才算执行完毕。

复制代码
function do_back()
{
    var opt = '<?php echo $opt;?>';
    if (opt == 'auto')
    {
        // 跳转之前,处理一些事情
        res = reset_current_phone();
        if (res)
        {
            javscript : window.history.go(-1);
        }
    }
    else
    {
        javscript : window.history.go(-1);
    }
}
复制代码

细节,原来如此重要。

一个async参数竟然如此神奇。



本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/4956524.html如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
动手开发第一个 Cypress 测试应用
动手开发第一个 Cypress 测试应用
5 0
通过一个简单的例子,了解如何单步调试 Cypress 代码
通过一个简单的例子,了解如何单步调试 Cypress 代码
4 0
Ajax传递复杂参数到服务器端的方法
Ajax传递复杂参数到服务器端的方法
5 0
中英文混版时的间距突然变大怎么通过CSS解决?
中英文混版时的间距突然变大怎么通过CSS解决?
5 0
DataTables能实现移动端的下拉加载吗?可以,需要借助一下Scroller插件
DataTables能实现移动端的下拉加载吗?可以,需要借助一下Scroller插件
4 0
如何修改Cypress 测试代码中默认的超时时间(timeout)
如何修改Cypress 测试代码中默认的超时时间(timeout)
5 0
Chrome 开发者工具 Initiator 面板单击后看不到 JavaScript 源代码的解决方法
Chrome 开发者工具 Initiator 面板单击后看不到 JavaScript 源代码的解决方法
4 0
JavaScript 里 window, document, screen, body 这几个名词的区别
JavaScript 里 window, document, screen, body 这几个名词的区别
5 0
一个好用的Visual Studio Code扩展 - Live Server,适用于前端小工具开发
一个好用的Visual Studio Code扩展 - Live Server,适用于前端小工具开发
5 0
单页面 Web 应用(Single Page Application,SPA)的工作原理介绍
单页面 Web 应用(Single Page Application,SPA)的工作原理介绍
5 0
3209
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载