加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax队列管理之jquery.ajaxmanager

发布时间:2020-12-15 21:03:39 所属栏目:百科 来源:网络整理
导读:在web应用中我们经常会用到ajax来进行web前段和服务器端的数据交互,那么如何管理我们的ajax请求的执行这就是我们需要思考的问题了。 ajax是异步请求,当然可以设置为同步但是会锁住浏览器用户体验不好,我们希望在第一次ajax请求执行完毕后再发送第二个ajax

在web应用中我们经常会用到ajax来进行web前段和服务器端的数据交互,那么如何管理我们的ajax请求的执行这就是我们需要思考的问题了。
ajax是异步请求,当然可以设置为同步但是会锁住浏览器用户体验不好,我们希望在第一次ajax请求执行完毕后再发送第二个ajax请求。
队列创建方法及说明:
var Queue=$.manageAjax.create('queue',{queue: true}); //创建一个队列对象
然后调用add方法添加构建ajax请求到队列中。然后通过私有_createAjax方法来创建XmlHttpRequest对象。

终止问题:怎样手动终止当前从队列中发送的ajax请求(XmlHttpRequest对象提供abort()来终止当前ajax请求).不错,我们怎样来获取当前从队列中发出的ajax请求对象。本人做了扩展,详情见附件。
修改说明:
在315行$.manageAjax._manager.prototype.send_xhr=null;添加扩展属性,用来保存当前发送的ajax请求对象。
153行that.send_xhr=that.requests[id];
156行that.send_xhr=$.ajax(o);

用来赋值当前创建的ajax请求对象。 这样我们就可以在需要手动终止请求对象的地方调用Queue.send_xhr.abort();来结束请求了.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读