我无法使用本地数据构建jqGrid TreeGrid。如果你注释掉treeGrid和ExpandColumn属性,这个方法可以很好地作为常规网格工作,但是一旦你添加它们试图使它成为树网格,它就不会创建一个树网格(它只是创建一个“普通”网格) ),它不再适当排序。
我确保在jqGrid下载期间下载了正确的TreeGrid文件。
jQuery(function(){
var gridOptions = {
datatype: "local",
height: 250,
colNames: ['Name', 'Type', 'Last Modified On', 'Last Modified By'],
colModel: [{name: 'name', index: 'name', width: 200, sorttype: 'text'},
{name: 'type', index: 'type', width: 200, sorttype: 'text'},
{name: 'modifiedon', index: 'modifiedon', width: 200, sorttype: 'date'},
{name: 'modifiedby', index: 'modifiedby', width: 200, sorttype: 'text'}],
treeGrid: true,
ExpandColumn: 'name',
caption: "My Grid"
};
jQuery("#treeGrid").jqGrid(gridOptions);
var gridData = [
{name: "My File", type: "My File Type", modifiedon: "03/10/2010", modifiedby"Strong Sad", lft: "1", rgt: "8", level: "0"},
{name: "One of Everything", type: "Word Document", modifiedon: "02/12/2009", modifiedby: "Strong Bad", lft: "2", rgt: "5", level: "0"},
{name: "My Presentation", type: "PowerPoint", modifiedon: "01/23/2009", modifiedby: "The Cheat", lft: "3", rgt: "4", level: "0"}
];
for (var i = 0; i < gridData.length; i++) {
jQuery("#treeGrid").jqGrid('addRowData', i + 1, gridData[i]);
}
});
答案 0 :(得分:2)
TreeGrid文档中还有其他警告,其中大多数似乎适用于您尝试的操作。
- 目前不支持使用addRowData添加节点。
- 目前不支持添加节点。
- 目前,jqGrid只能处理从服务器返回的数据。
似乎所有这三个警告都适用于你。您使用addRowData
尝试将节点添加到“空”树,并尝试使用本地数据而不是“从服务器返回的数据”。
所以我建议你构建你的样本以匹配Treegrid real world example(可以在“版本3.5中的新功能”下的左侧找到)
您链接到州的TreeGrid文档:
你做到了吗?是否将jg文件中的相关js文件包含在jqGrid文件中?为了使用这个模块你应该 下载时标记Treegrid 网格。有关更多信息,请参阅 去下载。对于开发人员 - 这是 src中的grid.treegrid.js 。目录
在jsbin上快速复制/粘贴你的代码
http://jsbin.com/afuza/edit(然后点击预览按钮)