Dynatree : select 当 select 一个节点时自动所有兄弟节点
Dynatree : select all sibling nodes automatically when selecting a node
点击dyna树的节点时,如何自动select所有兄弟节点?我已经尝试了一些代码,但它不起作用。
您需要获取所选节点的父节点,然后是该父节点的子节点(因此是所选节点的兄弟节点)。
试试这个代码:
<script type="text/javascript">
$(function() {
$("#tree").dynatree({
onActivate: function(node) {
// Get the selected nodes parents children (the selected nodes siblings)
var siblings = node.getParent().getChildren();
// Loop through all the siblings and set selected to true
for(var i=0; i<siblings.length; i++)
{
siblings[i].select(true);
}
},
children: [
{title: "Folder", isFolder: true, key: "folder",
children: [ {title: "Sub-item 1"}, {title: "Sub-item 2"}, {title: "Sub-item 3"} ]
}
]
});
});
</script>
<div id="tree"></div>
抱歉回复晚了..但这对遇到同样需求的其他人肯定有帮助。
我们需要做的就是将下面的配置属性设置为3。
selectMode:3 // 这是多层次的
它会自动根据子节点的状态更改父节点的状态,反之亦然。
谢谢,
奇特拉
点击dyna树的节点时,如何自动select所有兄弟节点?我已经尝试了一些代码,但它不起作用。
您需要获取所选节点的父节点,然后是该父节点的子节点(因此是所选节点的兄弟节点)。
试试这个代码:
<script type="text/javascript">
$(function() {
$("#tree").dynatree({
onActivate: function(node) {
// Get the selected nodes parents children (the selected nodes siblings)
var siblings = node.getParent().getChildren();
// Loop through all the siblings and set selected to true
for(var i=0; i<siblings.length; i++)
{
siblings[i].select(true);
}
},
children: [
{title: "Folder", isFolder: true, key: "folder",
children: [ {title: "Sub-item 1"}, {title: "Sub-item 2"}, {title: "Sub-item 3"} ]
}
]
});
});
</script>
<div id="tree"></div>
抱歉回复晚了..但这对遇到同样需求的其他人肯定有帮助。
我们需要做的就是将下面的配置属性设置为3。 selectMode:3 // 这是多层次的
它会自动根据子节点的状态更改父节点的状态,反之亦然。
谢谢, 奇特拉