我有一个页面,用AJAX加载2下拉菜单。然后它加载第三个AJAX,加载时间可能超过30秒。 (慢速SQL查询)。
当用户从2个下拉列表中选择项目时,将再次触发第三个缓慢的AJAX以列出结果。
首次加载时一切正常。但是如果我刷新页面或者如果用户在第三个ajax仍然加载时选择了不同的选项,则页面会挂起,直到加载了第三个ajax。
我曾尝试.abort()
负载,但这似乎没有帮助。浏览器在加载ajax 1& 2和3之前等待中止文件加载。
我将中止添加到onbeforeunload
,但这对页面刷新问题没有帮助。
我使用纯JavaScript和jQuery尝试了这个,但结果相同。
服务器是IIS6,XML输出来自asp页面。
有没有办法解决这个问题?
答案 0 :(得分:0)
Abort Ajax requests using jQuery
这可以帮助您中止ajax调用。只需检查您实际调用abort()函数的ajax调用。
在旁注中,只需检查您的浏览器是否因系统中正在运行的其他进程而挂起。因为,每个被触发的ajax请求都会启动一个数据库查询,这也可能让你感觉很开心。