我正在使用带有context-menu选项的jquery-dynatree。
对于上下文菜单中的一个菜单项,我需要将整个子树显示为选择。 即选择的节点及其所有子节点,我可以使用以下代码执行此操作:
node.visit(function(childnode){
$(childnode.span).addClass("copy"); // <== This works
});
现在我有两个问题:
1)第一个问题是我有懒节点选项,所以每当我点击菜单项时,我需要将整个子树显示为选中,因为我使用下面的代码
node.visit(function(childnode){
childnode.expand(true); // <== This works
$(childnode.span).addClass("copy"); // <== Does not work
});
但它不能完全运行,它只将节点扩展到我初始化的级别,并且在扩展之后它不会将所需的CSS类“复制”添加到它自己或子节点。
2)第二个问题是,一旦我手动扩展了所有节点并选择了父节点,以便使用“copy”类显示整个子树,现在每当我点击任何父懒节点来检索这些子节点时,“复制“类从那些选定的节点中删除
期待解决此问题的一些提示。
答案 0 :(得分:0)
我现在已经获得了第一点的解决方案,因为我试图在折叠模式下单击父级,我必须先扩展节点本身,然后再展开其子节点。
node.expand(true); // This line was missing, it made the things work
node.visit(function(childnode){
childnode.expand(true);
$(childnode.span).addClass("copy");
});