2011-04-04 47 views
3

Jqgrid是否允许我们添加我们使用dataType本地的寻呼机并且不希望整个数据一次被加载。我试图做同样的事情,但没有成功。当显示更多记录时,它只显示第一页并在寻呼机上显示第1页。Jqgrid寻呼机不能与“本地”数据类型工作

+0

我还没遇到这个问题。你可以显示你的'.jqGrid()'init代码吗? – mVChr 2011-04-04 11:21:16

回答

2

可能是你用错误的方式填充了网格。看看the example看看如何使用jqGrid的data参数。

1

我有这个相同的问题。我有一个“本地”jqgrid设置,它显示我的数据,但传呼机值并不完全准确。直到我发现我需要使用'localReader'属性。在jqgrid wiki上,我看到jsonReader可以具有定义如何获取页面,记录等的函数。它还声明localReader可以执行任何jsonReader所做的任何操作,因此我对它进行了处理。这是我正在做的。

var grid = $('#table').jqGrid({ 
    datatype: 'local', 
    altRows: true, 
    colModel: [ 
    {name: '0', label: "Name"}, 
    {name: '1', label: "Color"}, 
    ], 
    pager: "#pager", 
    rowNum: 15, 
    sortname: '0', 
    viewrecords: true, 
    gridview: true, 
    height: '100%', 
    autowidth: '100%' 
}); 

var reader = { 
    root: function(obj) { return results.rows; }, 
    page: function(obj) { return results.page; }, 
    total: function(obj) { return results.total; }, 
    records: function(obj) { return results.records; }, 

grid.setGridParam({data: results.rows, localReader: reader}).trigger('reloadGrid'); 

我的 “结果” 是这样的对象:

{page: "1", total: "70", records: "1045", rows:[.....]} 

这似乎为所需的工作。