我使用这个代码:的jqGrid - 服务器端分页 - jsonstring - 显示不正确/无数据
var data = {
colModel: [
{ name: 'ID', index: 'id', width: "80" },
{ name: 'Name', index: 'name', width: "300" },
{ name: 'Value 1', index: 'value1', width: "110" },
{ name: 'Value 2', index: 'value2', width: "110" },
],
pager: instance.getPager().attr("id"),
datatype: "jsonstring",
datastr: {
"page": "5",
"total": "16",
"records": "400",
"rows": [
{
"id": 0,
"name": "name0",
"value1": 61,
"value2": 81
},
{
"id": 1,
"name": "name1",
"value1": 91,
"value2": 48
},
{
"id": 2,
"name": "name2",
"value1": 65,
"value2": 41
},
{
"id": 3,
"name": "name3",
"value1": 20,
"value2": 49
},
{
"id": 4,
"name": "name4",
"value1": 34,
"value2": 91
},
{
"id": 5,
"name": "name5",
"value1": 80,
"value2": 31
},
{
"id": 6,
"name": "name6",
"value1": 9,
"value2": 37
},
{
"id": 7,
"name": "name7",
"value1": 41,
"value2": 14
},
{
"id": 8,
"name": "name8",
"value1": 10,
"value2": 85
},
{
"id": 9,
"name": "name9",
"value1": 21,
"value2": 9
},
{
"id": 10,
"name": "name10",
"value1": 67,
"value2": 55
},
{
"id": 11,
"name": "name11",
"value1": 50,
"value2": 23
},
{
"id": 12,
"name": "name12",
"value1": 11,
"value2": 92
},
{
"id": 13,
"name": "name13",
"value1": 52,
"value2": 54
},
{
"id": 14,
"name": "name14",
"value1": 55,
"value2": 94
},
{
"id": 15,
"name": "name15",
"value1": 23,
"value2": 98
},
{
"id": 16,
"name": "name16",
"value1": 5,
"value2": 69
},
{
"id": 17,
"name": "name17",
"value1": 19,
"value2": 19
},
{
"id": 18,
"name": "name18",
"value1": 38,
"value2": 60
},
{
"id": 19,
"name": "name19",
"value1": 21,
"value2": 78
},
{
"id": 20,
"name": "name20",
"value1": 22,
"value2": 52
},
{
"id": 21,
"name": "name21",
"value1": 63,
"value2": 33
},
{
"id": 22,
"name": "name22",
"value1": 51,
"value2": 13
},
{
"id": 23,
"name": "name23",
"value1": 51,
"value2": 83
},
{
"id": 24,
"name": "name24",
"value1": 82,
"value2": 13
}
]
},
jsonReader: { repeatitems: false },
rowNum: 25,
viewrecords: true,
caption: "Packages",
height: "auto",
ignoreCase: true
};
console.log(JSON.stringify(data));
instance.getContainer().jqGrid(data);
我所试图做的是从服务器返回结果的一个子集(在这里我刚才硬编码它们),我想通过指定页面和总数来模拟分页,并将它们显示在表格中。
表生成并知道行(它创建行和我的表扩展到正确的高度),但单元格为空。
此外,寻呼号码不像我预期的那样,我希望的页面和记录的总数分别是16和400,它们不是,它们匹配数据(1和25),所以我看到'page 1的5'和'25的101-125'。
此外,如果jsonReader: { repeatitems: false },
丢失或设置为true,然后我得到一个错误:
TypeError: obj is undefined
这是一个错误?不知道我是否做错了什么。
是否有人知道如何解决(至少可以重现)这个问题?在FF和Chrome上进行测试。
感谢
UPDATE:问题的
,一部分是固定的(克里斯的答案),我现在可以看到表中的数据。通过更改colModel中的名称标签来修复。
但仍存在一些突出问题:
- 的总页面数仍呈现为1,所以我看“第5页1”我想让它显示“第5页16”
- 总记录数显示为25还是让笔者看到了“101 - 125 25”时,我想看看101 - 125 400“
- 还有错误设置
repeatitems: true
我当假设fi前两个问题是相关的。