2

将节点拖到新位置并不总是粘住。我的代码就像

    $("#product-category-tree").jstree({
        "plugins":["themes", "html_data", "dnd"], 
        "themes":{
            "icons": false,
            "dots": false
        }
    }).bind("move_node.jstree", function(e , data){
        data.rslt.o.each(
            function(i){
                $.ajax({
                    type: 'PUT',
                    url: '/product_categories/move',
                    data: {
                        "operation" : "move_node",
                        'drag_id' : $(this).data("id"),
                        'drop_id' : data.rslt.np.data("id"),
                        'index' : data.rslt.cp + i
                    },
                    success: function(r){
                        if (r != 'success'){
                            alert(r);
                            $.jstree.rollback(data.rlbk);
                        }
                    }
                });
            }
        )
    })
4

1 回答 1

3

项目的 GitHub 页面上有一个未解决的问题 ( #174 )。你可以在那里找到很多解决方法。

我用过这个,它是侵入性最小的,但仅限于现代浏览器:

#jstree-marker-line {
    pointer-events: none;
}
于 2012-09-09T15:20:20.513 回答