如何使用jQuery实现ajax请求队列
使用jQuery实现Ajax请求队列的最佳方式是什么?具体而言,我想完成以下任务:如何使用jQuery实现ajax请求队列
用户触发任意数量的网页中的Ajax请求,这需要进行排队,依次提交的。
网页需要接收来自服务器的响应并相应地进行调整。最后,如果发生错误(连接丢失,服务器无法响应等),我希望jQuery调用JavaScript函数。
由于jQuery的Ajax函数中的错误处理机制不是非常直观,所以我特别努力解决最后的需求。有任何示例/教程可以帮助我完成此任务吗?
谢谢!
我已经做了几个像这样的缓冲区。一些例子可以发现simple task Buffer和deferred item queue。
至于错误处理,你可以随时使用.ajaxError
谢谢,这些看起来很有希望! – 2011-04-08 22:00:57
@Jen如果您使用服务器上的节点,请考虑使用socket.io或现在;) – Raynos 2011-04-08 22:16:17
jQuery ajax有一个错误属性,您可以在其中附加一个函数,并且该方法只会在发生错误时触发。看下面的例子:
jQuery.ajax({
type: "POST",
url: "url",
dataType:"json",
data:{},
success:function(data){
alert("Succeed!");
},
error:function (xhr, ajaxOptions, thrownError){
alert(xhr.status);
alert(thrownError);
}
});
我希望你觉得这有帮助。
谢谢!我以前试过这些错误处理程序,但发现它们的行为相当不可预测。即使连接丢失,我也会得到*成功*指示... – 2011-04-08 21:59:51
你可能会喜欢这样的:http://www.erichynds.com/jquery/using-deferreds-in-jquery/ – 2011-04-08 21:54:42