Javascript jQuery Dynatree,是否按标题选择子节点?
我正在使用一些代码以编程方式选择动态树的根节点(其中唯一的一个),即Javascript jQuery Dynatree,是否按标题选择子节点?,javascript,jquery,dynatree,jquery-dynatree,Javascript,Jquery,Dynatree,Jquery Dynatree,我正在使用一些代码以编程方式选择动态树的根节点(其中唯一的一个),即 $("#divDynaTree").dynatree("getRoot").visit(function (node) { node.select(true); }); 我有第二个dynatree,它有多个“父”和“子”节点,当我在应用程序中使用单独的事件(单击按钮)时,我希望以编程方式选择其中一个“子”节点。我想使用子节点的标题,但我很难找到正确的语法。我在这个网站和goodle上浏
$("#divDynaTree").dynatree("getRoot").visit(function (node) {
node.select(true);
});
我有第二个dynatree,它有多个“父”和“子”节点,当我在应用程序中使用单独的事件(单击按钮)时,我希望以编程方式选择其中一个“子”节点。我想使用子节点的标题,但我很难找到正确的语法。我在这个网站和goodle上浏览了其他dynatree线程,但还没有找到我想要的东西(或者可能很接近,但我的经验不足导致我看不到)。我假设代码与上面类似,使用“visit”。。但我不知道现在该去哪里。任何帮助都将不胜感激。请尝试此“全选子节点”:
$(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);
你可能在找
$("#tree").dynatree("getTree").activateKey("KeyName")
它将使用其键从外部事件激活节点。这来自“编程动态树”下的第二个示例
我没有寻找通过名称而不是键来查找节点的方法,可能有更好的方法,但我认为您可以使用visit来查找键,然后像这样激活它
function ActivateNodeByTitle(nodeTitle){
var $tree = $("#tree").dynatree("getTree")
$tree.visit(function(node){
if(node.data.title === nodeTitle){
$tree.activateKey(node.data.key)
return false; // stop traverse
}
});
return false
}
我以前见过这个代码块,但这并不是我想要做的。我只希望通过标题选择一个子节点,直到发生当前未连接到树本身的按钮单击。谢谢你的回复谢谢你Amrendra,我会尝试一下!