我使用Fancytree和Drag&创建了一个类别树。删除功能,如
现在,我想为子节点设置限制。如果父节点已经有3个子节点,那么他无法创建新的子节点,例如
分类
父类别
允许的子类别
允许儿童类别
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);
}
当我移动任何一个类别时,这工作正常。但是当我移动" Moved Node" category,因为此类别已有2个子节点,并且该子节点已有2个子节点,如
我移动"移动节点"这是工作如何计算子节点或停止移动该节点。我想设置创建3个子节点的限制。我怎样才能做到这一点。以及如何计算移动类别的所有子节点。
由于
答案 0 :(得分:2)
可以使用node.countChildren
计算子节点,但是根据您的描述,我想您想要计算子节点的最大级?
没有内置方法,但您可以使用node.visit()
实现它。