zTree设置选中节点之后出现重复节点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zTree设置选中节点之后出现重复节点相关的知识,希望对你有一定的参考价值。

1.用户离开页面时最后一次点击的节点信息我会保存到数据库。

2.用户打开页面时默认选中上一次离开时选中的节点。

现在发现在设置选中节点之后,会出现重复的节点(重复现象偶尔出现)。

以下是代码:

 1
 1     var setting = {
 2         view: {
 3             selectedMulti: false,
 4         },
 5         data: {
 6             key: {
 7                 title: ‘‘
 8             },
 9             simpleData: {
10                 enable: true
11             }
12         }
13     };

 

 // 加载站点树
 2     $.post(‘/Func/HandlerGetTree.ashx?action=GetModule‘, { a1: 1, a2: 2 }, function (data) {
 3 
 4         $.fn.zTree.init($(‘#left-tree‘), setting, str2json(data));
 5         zTree_left = $.fn.zTree.getZTreeObj("left-tree");
 6 
 7         $.ajax({
 8             url: ‘/Home/GetUserAreaLog‘,
 9             data: { interfaceId: moduleID },
10             type: ‘POST‘,
11             dataType: "json",
12             success: function (json) {
13                 if (json.Records != undefined && json.Records.length > 0) {
14                     //最后一次选中的节点ID
15                     var selectedNodeID = json.Records[json.Records.length - 1].ID;
16 
17                     var lefttree = $.fn.zTree.getZTreeObj(‘left-tree‘);
18                     //查找节点
19                     var currentSelectedNode = lefttree.getNodeByParam("id", selectedNodeID, null);
20                     //选中
21                     lefttree.selectNode(currentSelectedNode, false);
22 
23                 }
24             },
25             complete: function (e) {
26 
27             }
28         });
29     });

 

post查到的结果集为:

var data="[{id:"104c7d9c-a57f-4b04-b169-5164cbc768d3",pId:"c85559f6-eb46-4899-98a1-53d4716e931f",name:"江苏省",iconSkin:"icon01",open:true},{id:"a99ba7dc-29b1-497b-86d6-1045f6747433",pId:"a6216479-4e78-4a84-82c6-e6add645d7a2",name:"公司",iconSkin:"icon01"},{id:"c85559f6-eb46-4899-98a1-53d4716e931f",pId:"",name:"所有区域",iconSkin:"icon01"},{id:"a6216479-4e78-4a84-82c6-e6add645d7a2",pId:"104c7d9c-a57f-4b04-b169-5164cbc768d3",name:"无锡市",iconSkin:"icon01"},{id:"8770135b-ef8c-e511-9412-e41f13e2242a",pId:"a99ba7dc-29b1-497b-86d6-1045f6747433",name:"测试1",iconSkin:"icon05"},{id:"938fa278-918e-e511-9412-e41f13e2242a",pId:"a99ba7dc-29b1-497b-86d6-1045f6747433",name:"测试2",iconSkin:"icon05"}]"

删掉结果集中的“open:true”就没有出现重复的问题,不知道为什么。

以上是关于zTree设置选中节点之后出现重复节点的主要内容,如果未能解决你的问题,请参考以下文章

jquery 怎样获得选中的ztree项

zTree根据json选中节点,并且设置其他节点不可选

ztree获取选中节点时不能进入可视区域出现BUG如何解决

如何在TreeView中选中他的节点时,更改节点的背景颜色?

ztree如何设置最内层子节点为半选状态?

ztree点击节点实现选中/取消复选框