教你如何终止jQuery的ajax请求

教你如何终止jQuery的ajax请求
最近,如果用户频繁点击Ajax请求,有两个问题:

1,如果在4之前连续单击5 Ajax请求无效,则关闭保存资源。

2,更严重的问题是:最后一个发送请求,响应不一定是最后一个请求,它很可能会造成混乱。

实际上,我设计了队列的实现,后来发现jQuery直接通过了中止方法,所以它不需要如此复杂地实现。毕竟,还有其他事情等着我们去做。

用Ajax、ajax、$、SQL、ajax等方式发送Ajax请求非常方便,但有时我们需要中途停止Ajax请求。

例如,当一个彗星用于聊天时,服务器通常在发送请求刷新链接并返回数据后需要几十秒。假设服务器在30秒内刷新一个链接,如果我们想在10秒内停止Ajax请求,该怎么办

从代码开始,然后再解释它。
无功ajaxget =美元。得到(comet_server.php,{ 1 },ID:功能(数据){ {)
……/操作
});
AjaxGet.abort();

上面的代码部分在两个知识点上:

1返回的数据类型。美元。得到的是XMLHttpRequest,请参阅手册。(美元。后,美元。Ajax,美元。getJSON,美元。getscript是相同的)

2。XMLHttpRequest对象已中止()方法

注意:在中止()之后,Ajax请求立即停止,但它仍然执行后面的函数()。如果您想避免执行操作,可以判断函数的开始()
无功ajaxget =美元。得到(comet_server.php,{ 1 },ID:功能(数据){ {)
如果(data.length = = 0)返回true;
……/操作
});
AjaxGet.abort();

终止Ajax请求:
无功要求=美元。得到(ajax.aspx,{ 1 },ID:功能(数据){ {)
做某事
});
请求终止操作。
Request.abort();

防止重复请求:
无功的要求;
如果(请求)!= null)
Request.abort();
请求=美元。得到(ajax.aspx,{ 1 },ID:功能()){
做某事
});
Ajax的setTimeout实现secondtry终止firsttry的Ajax后的第二个等待
无功firsttry Ajax(=美元。
做某事
);
无功secondtry = setTimeout(){ alert(功能(好的);firsttry.abort()},1000);
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部