4

这是我创建 jqGrid 的代码

$("#ptDataGrid").jqGrid({
                    datatype: 'local',
                    data: arrSpecData,
                    colModel: colmod,
                    rowNum: 10,
                    rowList: [10],
                    pager: '#ptPager',
                    gridview: true,
                    rownumbers: false,
                    viewrecords: true,
                    loadonce:false,
                    hidegrid: false,
                    autowidth: true,
                    caption: 'Crank Pin',
                    height: '100%',
                });

然后我对我的数据应用了一些过滤器并创建了另一个名为FilteredData的数组。现在我想将这个新的数据源分配给我的网格。我已经尝试了所有我知道的方法。但没有任何效果。那么,我们如何将新的数据源动态分配给 jqGrid 呢?请提出一些分配它的方法。

                dataGrid.setGridParam({ data: filterdData });
                dataGrid[0].refreshIndex();  
                dataGrid.trigger("reloadGrid"); 

我得到的结果仍然相同:(

解决方法 #1

 $('#divGrid').children().remove();
 $('#divGrid').html(' <table id="ptDataGrid" class="jqgriddata"><tr><td/></tr></table><div id="ptPager"></div> ');  

 createGrid(filterdData,true);
4

1 回答 1

5

您可以先设置新datasetGridParam,然后调用refreshIndex方法(见答案)来更新内部使用的_index参数。

更新:单击演示上的“更改数据”按钮以验证该方法是否有效。

于 2012-01-25T11:39:33.813 回答