【发布时间】:2016-11-30 22:09:10
【问题描述】:
我在我的 Django 项目中使用Select2 选择框。如果您只在查询框中输入了一个或两个字符,它进行的 ajax 调用可能会相当耗时,但如果您输入了几个字符,则执行速度会更快。所以我看到的是你将开始输入一个查询,它会进行 4 或 5 次 ajax 调用,但最后一个会返回并显示结果。它在屏幕上看起来不错,但与此同时,服务器仍在处理早期的查询。我已经将“延迟”参数增加到 500 毫秒,但还是有点问题。
有没有办法让服务器上的 AJAX 处理程序检测到这是来自与当前正在处理的客户端相同的客户端的新请求,并告诉旧的请求立即退出?从此处阅读其他答案看来,仅在客户端调用 .abort() 并不会停止在服务器端运行的查询。
【问题讨论】: