Dynatree,父节点未经检查甚至所有子节点都被选中

时间:2015-04-16 13:23:15

标签: jquery dynatree

我正在使用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 也会被选中。

我理解它是一个层次结构,所以如果我选择父节点的所有子节点,父本身就会被选中。

但有没有一个参数可以改变我想要的方式?

1 个答案:

答案 0 :(得分:0)

能够解决它。而不是 selectMode:3 使用 selectMode:2

然后在选择回调函数中迭代子项并根据父项选择/取消选择它们,如下所示。

obj.value