码迷,mamicode.com
首页 > Web开发 > 详细

ajax同步异步

时间:2020-01-06 12:35:55      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:返回   primary   监听   null   text   pre   其他   浏览器   客户端浏览器   

ajax 同步和异步区别?

我们在使用 ajax 一般都会使用异步处理。

异步处理呢就是我们通过事件触发到 ajax,请求服务器,在这个期间无论服务器有没有响应,客户端的其他代码一样可以运行。

同步处理:我们通过实践触发 ajax,请求服务器,在这个期间等待服务器处理请求, 在这个期间客户端不能做任何处理。当 ajax 执行完毕才会继续执行其他代码。

 

同步:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事异步: 请求通过事件触发->服务器处理(这是浏览器仍然可以作其他事情)->处理完毕同步需要等待返回结果才能继续,异步不必等待,一般需要监听异步的结果

同步是在一条直线上的队列,异步不在一个队列上 各走各的

jquery 的 async:false,这个属性

默认是true:异步,false:同步。举例:

同步就是你叫我去吃饭,我听到了就和你去吃饭;如果没有听到,你就不停的叫,直到我告诉你听到了,才一起去吃饭。

异步就是你叫我,然后自己去吃饭,我得到消息后可能立即走,也可能等到忙完才去吃饭。

 

在项目中初始化grid值的时候,我传Id内码没有传到后台中去,原因是因为ajax是异步操作,而后请教老师,在ajax中添加了如下代码:

 $.ajax({
                type: "post",
                url: context + url_query,
                data:{"fumigationrecId" : primaryKey},
                async:false,
                success: function(map) {
                	//alert(map);
                    if (map != null) {
                        $.each(map, function(key, value) {
                            $("#"+key).val(value);
                        });    
                        
                        }else {
                               sticky("获取出错", ‘error‘, ‘center‘);
                        }
                    }
            });

  关键代码为:

async:false,

  此句为关闭ajax的异步操作,改为同步操作,直接传Id至后台,在初始化界面时完成初始化grid的操作。

————————————————
版权声明:本文为CSDN博主「李澎昆」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42611547/article/details/86130122

ajax同步异步

标签:返回   primary   监听   null   text   pre   其他   浏览器   客户端浏览器   

原文地址:https://www.cnblogs.com/longlyseul/p/12155547.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!