Jquery jqtree移动子节点

Jquery jqtree移动子节点,jquery,jqtree,Jquery,Jqtree,我想将子子节点移动到子节点,但不想将子节点移动到父节点。我可以将子节点移动到另一个父节点,但它不能是父节点。jqtree或jstree更适合绑定条件 var data = [ { label: 'node1', children: [ { label: 'child1', children: [ { label: 'sub-child1' } ]

我想将子子节点移动到子节点,但不想将子节点移动到父节点。我可以将子节点移动到另一个父节点,但它不能是父节点。jqtree或jstree更适合绑定条件

var data = [
    {
        label: 'node1',
        children: [
            { label: 'child1',
             children: [
                { label: 'sub-child1' }
            ]
            },
            { label: 'child2' }
        ]
    },
    {
        label: 'node2',
        children: [
            { label: 'child3' }
        ]
    }
];

$(function() {
    $('#tree1').tree({
        data: data,
        dragAndDrop: true,
        /*onCanMove: function(node) {
            if (! node.parent.parent) {
                // Example: Cannot move root node
                return false;
            } else {
                return true;
            }
        },*/
        onCanMoveTo: function(moved_node, target_node, position) {
            console.log(node);
            if (target_node == moved_node.parent.parent) {
                return (position == 'inside');                        
            }
            else {
                return true;
            }
        }
    });
});

$('#tree1').on("click",function() {
    var node = $('#tree1').tree('getSelectedNode');
    console.log(node.name);
});

我得到了解决方案,如果有人在寻找类似的问题,这可能会有所帮助 我所要做的就是这样

onCanMove: function(node) {
            if (!node.parent.parent) {
                return false;
            } 
            else {
                return true;
            }
        },
        onCanMoveTo: function(moved_node, target_node, position) {
           if(position == 'inside' && target_node !== moved_node.parent.parent && target_node.getLevel() < moved_node.getLevel()) {
                return true;
            } 
            else {
                return false;
            }
        }

为什么我被否决了?