easyui-treegrid移除树节点出错

时间:2023-03-08 21:16:17

easyui-treegrid移除树节点出错

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

2015年12月22日 11:46:02 星期二

http://fanshuyao.iteye.com/

一、问题描述

删除节点后js报错。

二、原因

因为删除的节点下面包含了其他的父子节点,但使用方法$('#select').treegrid('getChildren',row.id);获取的是该节点下的所有节点,并不是该节点的子节点,当删除某个父节点时,下面的子节点也删除了,但使用getChildren把所有节点都找出来了,当找不到某个节点时,就造成js错误

三、解决方法:

增加判断该节点是否存在:if($('#select').treegrid('find',childrenNode.id) != null){}

删除节点的方法:

remove id Remove a node and it's children nodes.

该方法需要注意的是,会把本节点也删除

代码示例:

var childrenNodes = $('#select').treegrid('getChildren',row.id);
for(var i=0; i<childrenNodes.length; i++){
var childrenNode = childrenNodes[i];
if($('#select').treegrid('find',childrenNode.id) != null){
$('#select').treegrid('remove',childrenNode.id);//移除
}
}

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

2015年12月22日 11:46:02 星期二

http://fanshuyao.iteye.com/