在网页上加载/显示大量数据
Posted
技术标签:
【中文标题】在网页上加载/显示大量数据【英文标题】:Loading/Displaying large amount of data on webpage 【发布时间】:2011-02-18 14:27:17 【问题描述】:我有一个网页,其中包含一个用于显示大量数据的表格(平均从 2,000 到 10,000 行)。 此页面需要很长时间才能加载/呈现。这是可以理解的。
问题是,当页面加载 PC 的内存使用量猛增时(我的测试系统上的 500mb 正在被 iexplorer 使用),整个 PC 停止运行,直到完成,这可能需要一两分钟。 IE一直挂到完成,切换到另一个正在运行的程序也是一样的。
我需要解决这个问题 - 理想情况下我想完成两件事:
1) 分别加载页面的各个部分。所以页面可以在没有大数据表的情况下进行初始渲染。加载 div 将被放置在那里,直到它准备好。
2) 渲染时不要占用太多内存或本地资源 - 这样至少他们可以同时使用不同的选项卡/应用程序。
我将如何同时做这两个或其中一个?
我是一名应用程序程序员,所以我仍然对我可以在网络环境中做的事情有点兴奋。
大家干杯。
【问题讨论】:
【参考方案1】:关于第一部分,称为Ajax:显示没有表格的页面,或者有一个空表格,然后使用ajax请求获取数据(html或任何数据格式)并显示。
关于第二部分,您需要一种称为延迟加载的东西:仅在用户需要时才加载数据的可能性,即当它位于文档的可见部分时。您可以查看 this question 了解能够处理数百万行的 DataGrid 库。
【讨论】:
【参考方案2】:两个基本选项:
分页 延迟加载(用户向下滚动时加载)。见this jQuery plugin【讨论】:
【参考方案3】:你可以尝试几件事:
Loading data Asynchronously 和 Paging
【讨论】:
第一个链接现在已经失效,第二个链接是 ac# 文章,因此投了反对票,我知道这是一个古老的答案,事情确实过时了,否则找不到 Loading data Asynchronously 文章我会更新链接。以上是关于在网页上加载/显示大量数据的主要内容,如果未能解决你的问题,请参考以下文章
js-页面需展示大量图片时,采用lyz.delayLoading.min.js,图片在屏幕时加载显示