jsTree - Sticky Node到列表的底部

时间:2012-03-12 22:40:43

标签: jquery sorting jstree

我希望特定类型的节点始终显示在父节点的底部。例如:

    • 节点类型A
    • 节点类型A
    • 节点类型A
    • 节点类型B

在这里,您可以拖放以移动/手动对类型A的节点进行排序,但是类型B将始终显示在这些节点下方。

这可能吗?如果可以,有人可以给我一些指示吗?

2 个答案:

答案 0 :(得分:0)

试试这个:

crrm : {
    move : {
        check_move : function (m) {
            var oldIndex = m.cop;
            var newIndex = m.cp;
            var oldParent = m.op;
            var newParent = m.np;

            if($("> ul > li[rel=typeB]", newParent).length == 0){ // no B Items in this folder
                return false;
            }
            // allow moving node only if "we are not going to place it to the end of the folder" or if "we are moving B node"
            return $("> ul > li", newParent).length != newIndex || m.o.attr("rel") == "typeB"; 
        }
    }
},

答案 1 :(得分:0)

使用排序插件

plugins: [..., 'sort'],
sort: function(a, b) {
  if (a.rel == b.rel) return this.get_text(a) > this.get_text(b) ? 1 : -1;
  else return a.rel > b.rel ? 1 : -1
}