zTree节点排序、jsTree节点排序
发布日期:2021-08-16 20:25:30 浏览次数:5 分类:技术文章

本文共 754 字,大约阅读时间需要 2 分钟。

项目中遇到了这个问题,网上也没找到比较清晰的答案,索性提供一个方案吧。

原理:将整个树形插件的数据源进行排序,插件在构造UI时,自然也是按照顺序来排列的,目前这种思路适用于 zTree 和 jsTree 类库(当然jsTree本身也有自己的排序插件),其他类库大家自行尝试。

这里拿zTree类库举例:

 

未排序的效果图如下

下面这段是zTree初始化的代码,各科树形类库大同小异,总之都有一个数据源(例如此处的 treeData

$.fn.zTree.init($(parentContainer), setting, treeData);

 

那么我们只需要在初始化之前,自己构造方法把 treeData 进行排序即可

// 先排序treeData = treeData.sort(function (a, b) {    // 以下是两种自定义排序规则,此处我们选择按楼层高度属性排序(由高到低)    // 按节点名称字符串,进行排序    // let param1 = a.name;    // let param2 = b.name;    // return param1.localeCompare(param2, "zh");    // 按楼层高度属性,进行排序    let param1 = a.elevation;    let param2 = b.elevation;    return param2 - param1;});// 再初始化$.fn.zTree.init($(parentContainer), setting, treeData);

 

经过排序后的效果图如下

转载于:https://www.cnblogs.com/sangzs/p/10524483.html

转载地址:https://blog.csdn.net/weixin_30823001/article/details/95765251 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:NOIP2009 Hankson的趣味题
下一篇:Word Break

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2024年05月07日 13时29分43秒