我正在使用 jQuery 的 jqGrid 插件来显示数据库查询的结果(通过 AJAX 提交)。在 Firefox、Chrome 和 IE9 中一切正常,但在 IE8 中有奇怪的行为。似乎正在发生的事情是,当发起 AJAX 请求时,浏览器冻结了大约 30 秒——页面上没有控件可以选择或单击,甚至浏览器窗口也无法移动。
我刚刚开始调试并找到了Fiddler2工具(对我来说是新的),这似乎表明实际的 AJAX 查询运行良好,但在那之后,Fiddler 显示了与www.w3.org/TR/html4/loose.dtd
with的连接result code 304
。当我查看该连接的时间线时,我发现它需要 30 秒才能完成。为什么会发生这种情况?
如果有帮助,这里有一些更详细的信息:
初始页面是reports.php
. 此页面包含启动 AJAX 请求的按钮。
在 Fiddler 中,我看到了与 的连接/xml/lsql_results_xml.php?[various parameters]
,然后我看到了一个 XML 响应,其中返回了正确的数据。这一切都按我的预期工作。
Fiddler 列表中的下一个连接是返回原始页面的连接: /clients/reports.php
?[各种参数,包括一些似乎是由 jqGrid 添加的]。当我在 Fiddler 中查看返回的内容时,它似乎是由 reports.php 生成的整个 html 页面。
Fiddler 中的下一个连接是到 www.w3.org 的奇怪连接,长度为 30 秒。这似乎冻结了浏览器。
什么解释了 AJAX 查询后 30 秒连接到松散.dtd 的这种奇怪行为?对进一步调试有什么建议吗? (显然,在某些时候我可能需要发布一个更详细的失败代码示例,但这需要创建这个专有系统的简化版本,所以目前,我只是在寻找更一般的指导,以防万一我我错过了一些非常基本的东西。)
谢谢!——杰夫