gpt4 book ai didi

javascript - Jstree - 如果在 Jstree 中检查了父节点,如何检查子节点?

转载 作者:行者123 更新时间:2023-12-03 09:13:51 28 4
gpt4 key购买 nike

如果我没记错的话,当使用 jstree 时,如果检查了父节点,那么它的子节点也会被检查。像这样enter image description here

我正在做的是,我正在进行 ajax 调用并仅加载父节点。我检查了父节点,当我展开父节点时,我正在进行另一个 ajax 调用并仅加载后续子节点。调用后,父节点保持选中状态,但其子节点不处于选中状态。就像下图所示。

enter image description here

这是我正在使用的代码:

$("#mytree").tree({
ui : {
theme_name : "checkbox"
},
plugins : {
checkbox : {
real_checkboxes : true,
real_checkboxes_names : function (n) { return [("check_" + (n[0].id || Math.ceil(Math.random() * 10000))), 1]; },
}
},
data : {
type : "json",
async : true,
opts : {
method:"GET",
url: "controller/getNodes"
}
},
callback : {
beforedata: function(NODE,TREE_OBJ){
return loadData(NODE,TREE_OBJ);
}
},
selected : false,
opened : "1"
});

我想做的是,当我进行ajax调用来加载子节点时,在调用返回后,如果检查了父节点,那么也应该检查其子节点。请帮帮我,该怎么做?

这是 loadData 的代码:

function loadData(Node,treeModule){
var treeNode = treeModule.get(Node,"json","");
var data="";
try{
data= treeNode.data.title;
}catch(err){
data="";
}
var Code = null;
if(data == "" || data == "Loading ..."){
Code = "";
}else{
try{
Code = Node[0].attributes.code.value;
}catch(e){}
}
return {"code":Code,"isdialog":"false"};

}

我正在寻找一个事件或其他事情来这样做。

最佳答案

请记住,您使用的是非常旧的 jstree 版本,该版本多年来一直不受支持。迁移到 v.3 将解决您的所有问题(在您的情况下将检查新加载的节点),但是需要一些时间并阅读设置,因为 v.3 与 v.1 有点不同。

关于javascript - Jstree - 如果在 Jstree 中检查了父节点,如何检查子节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32005141/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com