2010-03-24 137 views
1

我在使用本地数据构建jqGridTreeGrid时遇到问题。如果你注释掉treeGrid和ExpandColumn属性,这个方法可以正常工作,但是一旦你添加了这些方法来使它成为一个树形网格,它就不会创建一个树形网格(它只会创建一个“普通”网格),它不再正确分类。jQuery jqGrid TreeGrid无法正常工作

我确保我在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

[jqGrid的数据类型的TreeGrid本地实例:(http://www.trirand.com/blog /?page_id = 393/treegrid/json-and-xml-treegrid-complete-sample-resolved /) – 2011-03-11 19:52:43

回答

2

也存在的TreeGrid文档中的其它警告,其中大部分似乎适用于你尽力去做。不支持

  • 与addRowData目前添加节点。
  • 目前不支持添加节点。
  • 当前jqGrid只能使用从服务器返回的数据。

看来所有这三个警告适用于你。您尝试使用addRowData尝试将节点添加到“空”树,并尝试使用本地数据而不是“从服务器返回的数据”。

所以我建议你来构建你的样本相匹配的Treegrid real world example


为的TreeGrid的文档,你挂状态(可以在左边下“新的3.5版本”中找到):

为了使用此模块,您应该在网格下载 时标记Treegrid。有关更多信息,请参阅 以下载。对于开发人员 - 这是 src 目录中的grid.treegrid.js。

你这样做了吗? jgGrid的js文件中是否包含了TreeGrid的相关js文件?

上jsbin你的代码的快速复制/粘贴工作对我来说

http://jsbin.com/afuza/edit(然后点击预览按钮)

+0

@jitter是的,我在下载jqGrid文件(我检查了所有内容)时标记了Treegrid。你的链接并不是在工作,它不是一个树形网格,而只是一个网格。此外,排序不起作用。 – 2010-03-24 03:06:30

+0

我知道它不是一个treegrid,我的意思是只有网格atleast显示,但当然它不起作用,也不是treegrid。查看更多信息 – jitter 2010-03-24 09:39:00

+0

感谢您的回复。如果一个树形网格只能用于显示静态数据,那么我感到非常失望。 – 2010-03-24 15:27:54