zTree節點排序 jsTree節點排序

2022-08-11 20:57:23 字數 749 閱讀 4989

數字字母混合排序可以參考:

正文:

專案中遇到了這個問題,網上也沒找到比較清晰的答案,索性提供乙個方案吧。

原理:將整個樹形外掛程式的資料來源進行排序,外掛程式在構造ui時,自然也是按照順序來排列的,目前這種思路適用於 ztree 和 jstree 類庫(當然jstree本身也有自己的排序外掛程式),其他類庫大家自行嘗試。

這裡拿ztree類庫舉例:

未排序的效果圖如下

下面這段是ztree初始化的**,各科樹形類庫大同小異,總之都有乙個資料來源(例如此處的 treedata)

$.fn.ztree.init($(parentcontainer), setting, treedata);
那麼我們只需要在初始化之前,自己構造方法把 treedata 進行排序即可

//

先排序treedata = treedata.sort(function

(a, b) );

//再初始化

$.fn.ztree.init($(parentcontainer), setting, treedata);

經過排序後的效果圖如下

ztree遍歷所有節點

ztree遍歷所有節點 var treeobj fn.ztree.getztreeobj tree var node treeobj.getnodes 可以獲取所有的父節點 var nodes treeobj.transformtoarray node 獲取樹所有節點 console.log nod...

ztree設定節點checked

1 根據id獲取樹的某個節點 var ztree fn.ztree.getztreeobj mytree var node ztree.getnodebyparam id 1 2 設定node節點擊中狀態 ztree.selectnode node 3 設定node節點checked選中,有兩種方法...

zTree獲取(子)節點

1 var ids 2 ids getchildren ids,treenode treenode是選中節點,ids是子節點id陣列,格式 123,223,4,55 1.獲取直接子節點的id 返回值包含選中節點的id,即ids 0 function getchildren ids,treenode ...