当用户删除节点时,我们可以在父节点的子节点的控制台中显示警报或打印吗? 换句话说,当用户将任何节点删除到另一个节点时,我想显示节点删除的警报(子节点数量)。
这是我的 fiddle 。 http://jsfiddle.net/fuu94/116/
请运行 fiddle 展开“c”节点。 拖动“c-a”并放在“a”上,它显示 0(零),因为没有子节点。当它放在“b”上时,它显示 2“two”,因为该节点有两个子节点。
$('#tree').jstree({
core: {
check_callback: function (op, node, node_parent) {
return op == 'move_node' ? node_parent.id.indexOf('not') === -1 : true;
}
},
dnd: {
is_draggable: function (x) {
return true;
}
},
"plugins": ["dnd"]
});
最佳答案
似乎有一个 move_node 事件。但掉落后会触发。我想我们可以假设目标节点在删除之前有 n-1 个子节点,因为 jstree 不允许将节点删除到其父节点中。
$tree = $('#tree').jstree({
core: {
check_callback: function(op, node, node_parent) {
return op == 'move_node' ? node_parent.id.indexOf('not') === -1 : true;
}
},
dnd: {
is_draggable: function(x) {
return true;
}
},
"plugins": ["dnd"]
});
$tree.on('move_node.jstree', function(e, data) {
target = $tree.jstree('get_node', data.parent, false);
children = target.children.length-1;
alert(children);
});
关于javascript - 如何在删除节点时计算父节点的子节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23660417/