gpt4 book ai didi

javascript - 如何计算 Javascript Fancytree 上的子节点数量?

转载 作者:行者123 更新时间:2023-12-02 15:10:15 25 4
gpt4 key购买 nike

我使用带有拖放功能的 Fancytree 创建了一个类别树,例如

enter image description here

现在,我想为子节点设置限制。如果父节点已经有 3 个子节点,那么他无法创建新的子节点,例如

类别

父类别

  • 允许子类别

    • 允许子类别

      • 子类别不允许移动

就像这样,所以我为此创建了 javascript。

dragDrop: function(node, data) {
if( node.getLevel() >= 3 ){
return false;
}
console.log( node );
console.log( data );
var parentNodeKey = node.key;
var sourceNode = $(data.helper).data("ftSourceNode");
if( !data.otherNode ){
var title = $(data.draggable.element).text() + " (" + (count)++ + ")";
node.addNode({title: title}, data.hitMode);
return;
}
data.otherNode.moveTo(node, data.hitMode);

}

当我移动任何单个类别时,这工作正常。但是当我移动“移动节点”类别时,这不起作用,因为该类别已经有 2 个子节点,并且该子节点已经有 2 个子节点,例如

enter image description here

我移动了“移动的节点”,这正在工作,我如何计算子节点或停止移动该节点。我想设置创建 3 个子节点的限制。我怎样才能做到这一点。以及如何计算移动类别的所有子节点。

谢谢

最佳答案

子节点可以使用 node.countChildren 进行计数,但从你的描述来看,我猜你想计算子节点的最大级别

没有内置方法,但您可以使用 node.visit() 实现它。

关于javascript - 如何计算 Javascript Fancytree 上的子节点数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34824199/

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