我需要呈现大量的行数据(即。数百万行)在一个网格中使用JavaScript传递给用户。

用户不应该一次只查看页面或有限数量的数据。

相反,应该显示所有数据都是可用的。

不同于一次性下载所有数据,小块数据是在用户访问它们时下载的。通过滚动网格)。

行不会通过前端进行编辑,因此只读网格是可以接受的。

对于这种无缝分页,存在哪些用JavaScript编写的数据网格?


当前回答

我有点看不到这一点,对于jqGrid,你可以使用虚拟滚动功能:

http://www.trirand.net/aspnetmvc/grid/performancevirtualscrolling

但话又说回来,数百万行的过滤可以完成:

http://www.trirand.net/aspnetmvc/grid/performancelinq

我真的不明白“好像没有书页”的意义,我的意思是……没有办法在浏览器中一次显示1,000,000行——这是10MB的原始HTML,我有点不明白为什么用户不想看到这些页面。

无论如何……

其他回答

我知道这个问题已经存在几年了,但是jqgrid现在支持虚拟滚动:

http://www.trirand.com/blog/phpjqgrid/examples/paging/scrollbar/default.php

但是禁用了分页

我知道这是个老问题,但是…还有dhtmlxGrid可以处理数百万行。有一个演示有50,000行,但可以在网格中加载/处理的行数是无限的。

免责声明:我来自DHTMLX团队。

我推荐带有Buffered View特性的Ext JS Grid。

http://www.extjs.com/deploy/dev/examples/grid/buffer.html

(声明:我是w2ui的作者)

我最近写了一篇关于如何用100万条记录实现JavaScript网格的文章(http://w2ui.com/web/blog/7/JavaScript-Grid-with-One-Million-Records)。我发现,最终有3个限制因素会阻止你把分数提高:

div的高度有限制(可以通过虚拟滚动来克服) 在大约100万条记录之后,诸如排序和搜索之类的操作开始变慢 RAM是有限的,因为数据存储在JavaScript数组中

我已经用100万条记录(IE除外)测试了网格,它表现良好。有关演示和示例,请参阅文章。

看看dGrid:

https://dgrid.io/

我同意用户永远不需要同时查看数百万行数据,但是dGrid可以快速显示它们(一次显示一整屏)。

不要把海洋烧开来泡一杯茶。