我正在使用一些代码以编程方式选择动态树的根节点(其中唯一的一个),即
$("#divDynaTree").dynatree("getRoot").visit(function (node) {
node.select(true);
});
我有第二个 dynatree 有多个“父”和“子”节点,当我在应用程序中使用单独的事件(按钮单击)时,我想以编程方式选择一个“子”。我想使用子节点的标题,但很难找到正确的语法来这样做。我确实探索了这个网站和 goodle 上的其他 dynatree 线程,但还没有找到我正在寻找的东西(或者可能很接近,但我的经验不足导致我看不到它)。我假设代码将与上面类似,使用“访问”..但我不确定此时该去哪里。任何帮助将不胜感激。
最佳答案
尝试选择所有子节点:
$(function(){
var inEventHandler = false;
$("#tree").dynatree({
checkbox: true,
selectMode: 2,
[...]
onSelect: function(select, dtnode) {
// Ignore, if this is a recursive call
if(inEventHandler)
return;
// Select all children of currently selected node
try {
inEventHandler = true;
dtnode.visit(function(childNode){
childNode.select(true);
});
} finally {
inEventHandler = false;
}
}
或按名称搜索节点:
var match = null;
tree.visit(function(node){
if(node.data.title === "foo"){
match = node;
return false; // stop traversal (if we are only interested in first match)
}
});
alert("Found " + match);
关于javascript - jQuery Dynatree,按标题选择子节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15277510/