我在我们的内部系统中有一份报告,可以返回从1天到整整一年的数据。因此,报告可能需要0.5秒或超过45秒才能生成所有内容。
var ax = $.ajax({
type: "GET",
url: "/blah",
data: values,
success: function(data) { .. }
});
现在,当我们优秀的用户说“哦,等等!我希望这是从二月开始的,而不是一月!”。但是,自1月份以来,一个请求已经发生了,因为数据太多了!因此,用户将日期选项切换到二月,我可以看到Javascript控制台发送第二个请求。现在我们有两个,这是一个
比赛
/报告/?开始日期=1月(仍在加载…)
/报告/?开始日期=二月(嘿,我现在也在这里!)
然后,通常较小的一个会更快加载,但另一个加载后,它会覆盖他们已经拥有的。。嗯:)
我试过使用
ax.abort()
ax
如上所述的变量
here
所以现在我想知道,我错过了什么?我只想在用户更改某些选项后立即终止当前请求(客户端,我知道我在服务器端对此无能为力),这样我就不会同时发出2个或更多请求。背景
async: false
提前感谢你的帮助。