即使在页面刷新时,AJAX长时间加载也会挂起

问题描述:

我有一个加载了AJAX的2下拉菜单的页面。然后它加载第三个可能需要30秒才能加载的AJAX。 (慢SQL查询)。即使在页面刷新时,AJAX长时间加载也会挂起

当用户从2个下拉列表中选择项目时,再次触发第三个缓慢的AJAX以列出结果。

所有在第一次加载时工作正常。但是,如果我刷新页面,或者如果用户在第三个Ajax仍在加载时选择其他选项,则该页面将挂起,直到加载第三个Ajax。

我试过.abort()的负载,但这似乎没有帮助。在加载ajax之前,浏览器等待中止文件加载1 & 2和3.

我添加了中止到onbeforeunload但这并不有助于页面刷新问题。

我试过这个使用纯JavaScript和jQuery,但得到相同的结果。

服务器是IIS6,XML输出来自asp页面。

有什么办法可以解决这个问题吗?

+0

看起来像你需要找到一种方法来中止SQL查询,而不是AJAX ..因为这是什么导致放缓... –

Abort Ajax requests using jQuery

这会帮助你在中止Ajax调用。只需检查哪个ajax调用了你实际调用的abort()函数。

在附注中,只需检查您的浏览器是否因系统中正在运行的其他进程而挂起。因为每一个被触发的ajax请求都会启动一个数据库查询,这也可能会给你一种悬而未决的感觉。