如何使用jQuery实现ajax请求队列

使用jQuery实现Ajax请求队列的最佳方法是什么? 具体来说,我想完成以下任务:

  • 用户在网页中触发任意数量的Ajax请求,这些请求需要排队并按顺序提交。

  • 网页需要从服务器接收响应并相应地调整自身。

  • 最后,如果发生错误(连接丢失,服务器无法响应等),我希望jQuery调用JavaScript函数。

我特别挣扎于最后一个要求,因为jQuery的Ajax函数中的error handling机制不是很直观。 是否有任何示例/教程可以帮助我完成这项任务?

谢谢!

我做了一些像这样的缓冲区。 一些例子可以找到简单的任务Buffer和deferred item queue 。

至于error handling,您始终可以使用.ajaxError

jQuery ajax有一个error属性,你可以在其中附加一个函数,该方法只会在发生错误时触发。 见下面的例子:

 jQuery.ajax({ type: "POST", url: "url", dataType:"json", data:{}, success:function(data){ alert("Succeed!"); }, error:function (xhr, ajaxOptions, thrownError){ alert(xhr.status); alert(thrownError); } }); 

我希望你觉得这有帮助。