gpt4 book ai didi

angularjs - Kendo Treeview : How to set Intermediate state Programmatically

转载 作者:行者123 更新时间:2023-12-03 22:52:06 28 4
gpt4 key购买 nike

我正在尝试将 Kendo TreeView 与其他控件一起使用。树上的每个叶节点都会打开一个详细信息 Pane 。当我从详细信息 Pane 中选择所有元素时,我将该节点的状态设置为已检查

myTree.dataItem(node).set("checked", true);

当所有项目都未选中时,我将节点的状态设置为未选中。
myTree.dataItem(node).set("checked", false);

但是如果选择了某些项目,我想将节点的状态显示为中间

我怎样才能做到这一点。我在文档中找不到任何可以帮助我的内容。我发现的最接近的是
myTree.updateIndeterminate()

然而,它并没有发挥作用。显然,它根据子节点的状态设置状态。但就我而言,没有子节点。我在这里处理叶节点。我可以将叶节点的状态设置为 Intermediate 吗?如果是,如何?

最佳答案

在这方面找不到任何帮助。
最终使用以下方法

我现在找到与该特定节点关联的复选框,并使用 jQuery 设置它的 indeterminate 值。

function SetTreeNodeIndeterminate(nodeId, set) {
var uid = $("#" + nodeId).parents('li').attr('data-uid');
var node = myTree.findByUid(uid);
if (node.length == 0) return;
var checkBox = $("#_" + uid);
if (checkBox.length == 0) return;
checkBox.prop('indeterminate', set);
updateParentNodeState(node);
}

以下行确保节点的所有父节点也标记为不确定
function updateParentNodeState(node) {
myTree.updateIndeterminate(node);
let parentNode = myTree.parent(node);
if (parentNode.length > 0)
updateParentNodeState(parentNode);
}

关于angularjs - Kendo Treeview : How to set Intermediate state Programmatically,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42736466/

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