Jih*_*heL 3 json jqgrid treegrid
我是jqGrid的新手,我用本地数据构建了一个jqGrid treeGrid,一切都很好.但是现在我正在尝试用远程JSON数据做同样的事情,我无法获得treeGrid显示我的数据.这是treeGrid conf:
$("#"+subgrid_table_id).jqGrid({
url:"sg511e.php?id="+row_id+"&btr="+btr,
datatype:"json",
mType:'POST',
loadui: "disable",
colNames:['id','Prestations'],
colModel:[
{name:'id',index:'id',width:100,hidden:true},
{name:'name',index:'name',width:785,sortable:false}
],
pager: pager_id,
sortname: 'id',
sortorder: "asc",
hiddengrid:true,
gridview: true,
treeGrid:true,
treeGridModel: "adjacency",
treedatatype: 'json',
ExpandColumn: 'name',
jsonReader: {
repeatitems: false,
root: "rows"
},
Run Code Online (Sandbox Code Playgroud)
和JSON数据:
{
"page": 1,
"total": 1,
"records": 1,
"rows": [
{
"cell": {
"id": "1",
"name": "ECHANGEUR",
"level": "0",
"parent": "",
"isLeaf": true,
"expanded": false,
"loaded": true
}
},
{
"cell": {
"id": "1_1",
"name": "Intervention Aller sur Site",
"level": "1",
"parent": "1",
"isLeaf": true,
"expanded": false,
"loaded": true
}
},
{
"cell": {
"id": "1_1_1",
"name": "Date et heure d'arrivée sur le site",
"level": "2",
"parent": "1_1",
"isLeaf": false,
"expanded": true,
"loaded": true
}
},
{
"cell": {
"id": "1_1_2",
"name": "Consignation de l'échangeur",
"level": "2",
"parent": "1_1",
"isLeaf": false,
"expanded": true,
"loaded": true
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
我不明白我错了所以我希望你能提供一些帮助并解释我的错误.非常感谢JiheL
首先,您应该修复JSON数据:
"parent": ""为"parent": "null"根元素isLeaf属性的值:将所有true值false更改为并将所有false值更改为true"cell"从所有项目中删除部分"records": 1不对应4项数据.我认为正确的值应该是"records": 4,但最好的是pager从网格的选项列表中删除.在任何情况下设置page,total或者records都不重要.您可以更简化数据并rows从JSON数据中删除该部分.在我们必须改变的root属性的情况jsonReader下root: function (obj) { return obj; }.结果您可以使用以下简单的JSON数据:
[
{
"id": "1",
"name": "ECHANGEUR",
"level": "0",
"parent": "null",
"isLeaf": false,
"expanded": false,
"loaded": true
},
{
"id": "1_1",
"name": "Intervention Aller sur Site",
"level": "1",
"parent": "1",
"isLeaf": false,
"expanded": false,
"loaded": true
},
{
"id": "1_1_1",
"name": "Date et heure d'arrivée sur le site",
"level": "2",
"parent": "1_1",
"isLeaf": true,
"expanded": true,
"loaded": true
},
{
"id": "1_1_2",
"name": "Consignation de l'échangeur",
"level": "2",
"parent": "1_1",
"isLeaf": true,
"expanded": true,
"loaded": true
}
]
Run Code Online (Sandbox Code Playgroud)
该演示演示了更改的结果.延伸网格后如下图所示

我在演示中使用的代码是:
$("#grid").jqGrid({
url: "user2132268.json",
datatype: "json",
colNames: [ 'id', 'Prestations'],
colModel: [
{name: 'id', width: 100, key: true, hidden: true},
{name: 'name', width: 785, sortable: false}
],
sortname: 'id',
sortorder: "asc",
hiddengrid: true,
gridview: true,
treeGrid: true,
treeGridModel: "adjacency",
ExpandColumn: 'name',
ExpandColClick: true,
jsonReader: { repeatitems: false, root: function (obj) { return obj; } },
height: "auto"
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4618 次 |
| 最近记录: |