Javascript jqGrid排序-浏览器挂起以获取更大的数据

Javascript jqGrid排序-浏览器挂起以获取更大的数据,javascript,jquery,sorting,jqgrid,Javascript,Jquery,Sorting,Jqgrid,我需要在jqgrid中加载完整的数据(30000行),数据才能成功加载。但是,在完全加载数据后,如果单击“排序”,浏览器会挂起几秒钟,然后使用排序后的数据正确加载网格。是我在排序时停止浏览器挂起或显示加载图标的任何方法 在jqGrid中处理海量数据排序有什么建议吗 我使用静态数据加载网格,一次提取并加载500条记录 我的网格代码为- $('#demo').jqGrid({ datastr : 'json',

我需要在jqgrid中加载完整的数据(30000行),数据才能成功加载。但是,在完全加载数据后,如果单击“排序”,浏览器会挂起几秒钟,然后使用排序后的数据正确加载网格。是我在排序时停止浏览器挂起或显示加载图标的任何方法

在jqGrid中处理海量数据排序有什么建议吗

我使用静态数据加载网格,一次提取并加载500条记录

我的网格代码为-

$('#demo').jqGrid({                     
                    datastr : 'json',
                    datatype : "local",
                    sortable: true,
                    sortname : sortcol,
                    sortorder : asc, //sort order
                    colModel : colModelGrid, //Creating the grid model before jqgrid
                    page : 1,
                    height : '100%',
                    width : gridTotalWidth,
                    rowNum : 500,
                    rowTotal : bugCountTotal,
                    loadOnce : true,
                    loadui : "disable",
                    loadtext : "Loading...",
                    rownumbers : true,
                    //define column models
                    pager : '#' + pagerInfo, //set your pager div id
                    viewrecords : false, 
                    search : true,
                    rowList : rowInfo,
                    caption : 'Complete Report',
                    scroll : true, // set the scroll property to 1 to enable paging with scrollbar - virtual loading of records
                    emptyrecords : 'Scroll to bottom to retrieve new page', // the message will be displayed at the bottom

                    data : bugDetails, //variable that stores complete data - Static data
                    beforeRequest : function () {
                        //Show Spinner
                    },
                    loadComplete : function (data) {
                        //Hide Spinner
                        return;
                    },
                    loadError : function (r, st, error) {
                        console.log("Error Loading Grid.");
                    },

                });

我发现最重要的是减少页面中的行数。选择
rowNum:500
非常糟糕。没有监视器可以显示这么多行。性能的另一个重要方面是列数。更重要的是行数。此外,提及您在测试中使用的web浏览器非常重要。谷歌Chrome的性能再好不过IE8了。所有问题都应该写下测试中使用的jqGrid版本和fork

我为您制作了一个演示了加载、排序和过滤网格的时间,其中13列30000行显示在每页20行中。我用叉子,我开发的。您可以在浏览器中测试它,这对您来说是最重要的,并且可以查看预期的性能。代码非常简单。您可以使用播放更多的性能。代码使用

rowNum: 20

我建议您尝试减少应用程序中的
rowNum
值,并修改jqGrid文件的URL(至少在测试中是临时的),以释放中所述的jqGrid URL。您应该看到性能优势。

我发现最重要的是减少页面中的行数。选择
rowNum:500
非常糟糕。没有监视器可以显示这么多行。性能的另一个重要方面是列数。更重要的是行数。此外,提及您在测试中使用的web浏览器非常重要。谷歌Chrome的性能再好不过IE8了。所有问题都应该写下测试中使用的jqGrid版本和fork

我为您制作了一个演示了加载、排序和过滤网格的时间,其中13列30000行显示在每页20行中。我用叉子,我开发的。您可以在浏览器中测试它,这对您来说是最重要的,并且可以查看预期的性能。代码非常简单。您可以使用播放更多的性能。代码使用

rowNum: 20

我建议您尝试减少应用程序中的
rowNum
值,并修改jqGrid文件的URL(至少在测试中是临时的),以释放中所述的jqGrid URL。您应该看到性能优势。

要在排序时显示信息,您可以使用
onSortCol
(在单击可排序列之后和排序数据之前立即引发)和
gridComplete
(这将在所有数据加载到网格中且所有其他进程完成后触发。此外,事件独立于datatype参数并在分页排序等之后触发。)监视器上可以显示多少行?最好将
rowNum
的值减少到20-30行。不仅要知道行的数量,还要知道所拥有的列的数量。重要的是要指定您使用的jqGrid版本和jqGrid分支(,或版本中的旧jqGrid,在排序时显示信息。您可以使用
onSortCol
(在单击可排序列之后和排序数据之前立即引发)和
gridComplete
(这将在所有数据加载到网格中且所有其他进程完成后触发。此外,事件独立于datatype参数并在分页排序等之后触发。)监视器上可以显示多少行?最好将
rowNum
的值减少到20-30行。不仅要知道行数,还要知道列数。重要的是要指定使用哪个版本的jqGrid和jqGrid的哪个分支(,或版本中的旧jqGrid)