项目上使用 easyui treegrid进行展示树形结构,结构遇到了许多问题,这里只针对问题做一个简单的记录。
1.各个参数的意义
parentId (必须):记得前面有“” ,他是用来记录父级节点,没有这个属性,是没法展示父级节点
其次就是这个父级节点必须存在,不然信息也是展示不出来,在后台遍历组合的时候,如果父级节点不存在或为0时,此时 _parentId 应该不赋值。如果赋值 “0” 则显示不出来
state:是否展开
checked:是否选中(用于复选框)
iconCls:选项前面的图标,如果自己不设定,父级节点默认为文件夹图标,子级节点为文件图标
2. 子菜单点击不展示
这个问题主要是 在于有没有设置 _parentId
loadFilter:function(data,parentId){
$.each(data,function(i,d){
$.each(d,function(j,n){
if(n.pid!='0'){
n._parentId=n.pid;
}
n.id=n.column_id;
n.name=n.column_name;
n.is_enable = n.is_enable;
n.type=n.types;
});
});
return data;
},
如上述代码,需注意的是,pid字段代表是否有子菜单,没有为0,有的话为则为n.column_id
所以,当存在子菜单时,需要设置_parentId
3.关于点击含有子菜单的按钮
此时,点击时,会继续请求一开始的链接,不同于第一次,此时会带有id。需要注意进行区分id是否存在来展示不同的信息。