2

我已经使用 JQGrid 很长时间了,最​​近在使用大型记录集时遇到了问题。当记录集包含大约超过 100 万条记录时,使用 scroll:1 选项时发生的自动分页将停止工作。(我已经测试了 700K - 它可以工作,110 万并且它不起作用)。我一次只请求 50 条记录。

如果我更改为 scroll:false,它会显示寻呼机并正常运行。使用 scroll: true 也不起作用。

通过不工作,我的意思是我只能滚动浏览请求的记录的第一页。向下滚动不会导致 JQGrid 请求下一页记录。

有人找到解决方法吗?我正在使用最新版本的 jqgrid。谢谢!

4

1 回答 1

1

问题的根源在于 JavaScript 中的每个数字都是 64 位浮点数。

当您使用 FireBug 查看生成的表格时,您会看到,在 ui-jqgrid-bdiv 内部有一个高度设置为 rowHeight*records 像素的 div,当它变得足够大时,它以浮点形式表示,例如 7.22834e+7px 约 300 万行。

jqGrid 编写者使用了很多 parseInt() 和 parseInt(7.22834e+7) == 7,所以我的猜测是计算从那里横向进行。当您向下滚动到底部时,网格只是认为它已经加载了您的所有数据。

我尝试将 rowNum 设置为一个很大的数字,但它仍然只加载第一批数据。

很抱歉,但我认为除了设置 scroll=false 之外没有其他解决方法。

于 2013-10-23T00:26:03.430 回答