如何停止在jquery中发送的前一个ajax调用

我在rails 2工作我有一个问题,如何停止以前的ajax调用相同的元素。

例如,

我有类别下拉列表,根据博客类型进行更新。 我点击了两次类型,因此发送了2个请求。 在我的第二个req结束之前,如果我根据加载子类别的第一个响应点击了类别,现在第二个响应加载类别并更新了类别。 但子类别是从第一个响应类别中选择的类别之一的响应。

如何停止之前发送的ajax调用以获取类别。

var currentRequest = null; function someFunction(target){ currentRequest = jQuery.ajax({ url: target, beforeSend : function() { if(currentRequest != null) { currentRequest.abort() } }, success: function() { alert("done"); } }); } 

当然函数不是必需的,只需使用包含xhr-object的变量并在发送之前中止请求。