我正在使用Dynatree(版本:1.2.7)来创建分层多选。其网站中提供了复选框和selectMode 3 选项。
我有一个父子结构如下:
var treeData = [
{title: "TST", key: "TST" },
{title: "A1", key: "a1",expand: true,
children: [
{title: "A2", key: "a2" ,expand: true ,
children: [
{title: "A3", key: "a3" }
]
}
]
},
];
基本上:
A1
|
A2
|
A3
现在我需要的是,如果我选择 A1 ,则应选择其下的所有子项(即选中复选框)。这很好用。
但如果我选择 A3 ,则只选择 A3 。 这里 A3 是 A2 的唯一孩子, A2 是 A1 的唯一孩子,所以当我选择 A3 所有这些都被选中了。即使 A2 和 A1 也会被选中。
我理解它是一个层次结构,所以如果我选择父节点的所有子节点,父本身就会被选中。
但有没有一个参数可以改变我想要的方式?
答案 0 :(得分:0)
能够解决它。而不是 selectMode:3 使用 selectMode:2 。
然后在选择回调函数中迭代子项并根据父项选择/取消选择它们,如下所示。
obj.value