【问题标题】:Firefox 4 doesn't render partial pagesFirefox 4 不呈现部分页面
【发布时间】:2026-02-06 16:35:01
【问题描述】:

我有an ASP.NET MVC page,其中包含一个表格,其中每一行都需要一些时间来加载。所以我在每一行渲染后都会调用Response.Flush()

IE9 的行为方式应有尽有:逐行显示。另一方面,FF4 仅在完全加载完成后才显示页面,即使我可以在 FireBug 的“网络”选项卡中看到正在逐一接收行。

我在服务器端做错了什么吗?如果没有,我可以对我的 Firefox 做些什么,以便它以我想要的方式显示页面?

【问题讨论】:

  • 不幸的是,“修复”您的 Firefox(如果可以的话)不会帮助客户使用他们的 ;-) FF 是等待 页面 完成还是等待table 完成?
  • @pst,是的,我意识到这一点。我认为它正在等待整个页面完成,因为它直到最后才显示任何内容。甚至收到任何东西的唯一迹象是它显示<title>
  • 你可能想谷歌“增量回流”。
  • @MSalters,从我找到的页面来看,这似乎应该可以正常工作。

标签: asp.net-mvc firefox flush


【解决方案1】:

我会尝试使用 AJAX 来填充表格。也许每次调用一行,也许一次整套。

【讨论】:

    【解决方案2】:

    考虑使用</html> 关闭您的文档并在脚本中添加额外的行; <script> 标签可能(实际上)跟随</html>。不是真正的 AJAX 解决方案,不完全正确,但在您的服务器端可能更容易。

    类似但更正确的解决方案是在</body> 之前插入脚本。

    另见When does reflow happen in a DOM environment?

    【讨论】: