【发布时间】:2012-04-04 17:27:01
【问题描述】:
现在这将是一个非常荒谬的问题。但我能做什么,这是客户的要求。基本上,我们有一个大约 15000 多行的网格(主从类型)(有可能在几年内增加到 30-50000 行)。
我的客户不想要任何分页,也不想要裁剪任何数据。此外,他并没有完全使用最新的硬件,因此在浏览器上进行渲染是一个大问题。他想通过打印出来或在浏览器上浏览来查看所有内容。 (你可能都认为这听起来多么疯狂,而且确实如此)。
现在我想通过快速渲染 html 来解决这个问题。目前它是一个简单的 asp.net 网格视图,没有分页。这实质上是呈现 HTML 表格。我认为我的选择是: - 使用 div 手动渲染 html(用于快速加载) - 将其导出为 pdf 或 excel(有什么方法可以导出而不需要借助第三方控件?) - 给手指(给客户:D j/k)
所以总结一下,在 html 上显示 10,000 多条数据记录的最佳方式是什么?
【问题讨论】:
-
您确实有选择,使用 Nustache 将对象呈现为 html,然后附加到容器,使用 YUI 数据表,最后您可以使用客户端代码使用 Backbone.js 委托渐进式加载类型表这将在您滚动或点击加载更多按钮时加载更多行
-
长 tables 可能会很慢,因为(较旧的)浏览器需要在开始布局页面之前读取整个表格。也许非桌面解决方案会更好。
-
您必须考虑您为客户提供的任何解决方案是否会对结果感到满意,我更倾向于使用通用 UI 控件模拟演示并让客户看到什么样的他应该预料到糟糕的用户体验,否则您的声誉可能会受到影响,这对于不切实际的期望是不值得的。
-
@deeptechtons:非常感谢您的建议。我正在尝试,模板肯定会有所帮助,但是在渐进式加载问题上,由于有时会失败,所以有点不安。
-
@Hans Kesting:你是对的,长表在页面渲染时有这个问题,我正在考虑使用 div 作为替代方案,但是由于数据是网格形式(典型的行/单元格类型),创建div 只是需要更长的时间,还没有对两者进行性能测试,所以不确定使用 div 会获得多少好处..