原文章 : https://blog.csdn.net/tj19901125/article/details/84759767
在使用jsTree是,一般为了方便用户勾选会使用 three_state 的默认设置(true)。但是这样会导致一个问题,数据回显的时候如果父节点被选中,那么子节点都会被选中。
例如下面这个数据:
var data = [
{ "id" : "id1", "parent" : "#", "text" : “我是第一级节点1" ,'state' : {'selected' : true}},
{ "id" : "id2", "parent" : "#", "text" : "我是第一级节点2" ,'state' : {'selected' : true}},
{ "id" : "id3", "parent" : "id2", "text" : "我是第二级节点1" ,'state' : {'selected' : false}},
{ "id" : "id4", "parent" : "id2", "text" : "我是第二级节点2" ,'state' : {'selected' : true}},
];
回显的时候因为id2被选中,哪怕id3没被选中,也会因为id2被选中而选中。
解决方法是可以临时将cascade设置为空,然后设置完