easyui-tree 显示到指定层次
来源:互联网 发布:多益网络在哪里 编辑:程序博客网 时间:2024/05/19 19:16
前言
最近工程中要求将easyui-tree的树形结构显示到指定层次,再网上搜索了一下发现没有现成的代码,稍微做了一下研究,现在贴出来供大家参考。
要求
返回的树形结构中有一个属性表示当前节点的层次,我这里是type
代码
var expendFunction = function (treeNodes) { //var treeNodes = $('#tt').tree('getRoots'); $(treeNodes).each(function () { var data = $('#tt').tree('getData', this.target); if (data.type < 2) { $('#tt').tree('expand', this.target); expendFunction($('#tt').tree('getChildren', this.target)); } }) };
tt是树形结构的Id.
调用:
$('#tt').tree({ url: url, queryParams: filter, onLoadSuccess: function (node, data) { if (data) { $('#tt').tree('collapseAll'); var Roots = $('#tt').tree('getRoots'); expendFunction(Roots); } }});
2017年7月12日更新
近日里调程序发现需要展开的节点只有十多个,但是Js代码卡顿确有2秒以后,调试后发现easyui-tree 默认的getChildren方法得到的子节点非下级节点,而是包括是子孙级节点,子孙级节点近万条,所以导致等待时间太长。
解决方案
easyui-tree没有提供只得到下级节点的方法,所以参用了增加扩展方法
//扩展Easyui-tree 获取一级子节点$.extend($.fn.tree.methods, { getLeafChildren: function (jq, params) { var nodes = []; $(params).next().children().children("div.tree-node").each(function () { nodes.push($(jq[0]).tree('getNode', this)); }); return nodes; }});注:此方法来自互联网。
代码
var expendFunction = function (treeNodes) { //var treeNodes = $('#tt').tree('getRoots'); $(treeNodes).each(function () { var data = $('#tt').tree('getData', this.target); if (data.type < 2) { $('#tt').tree('expand', this.target); expendFunction($('#tt').tree('getLeafChildren', this.target)); } }) };
阅读全文
0 0
- easyui-tree 显示到指定层次
- EasyUI Tree节点拖动到指定容器
- easyui tree 显示数据
- EasyUI-tree 增加title显示
- easyUI 附加tree节点到tree
- goto语句跳转到指定循环层次
- easyui时间显示到月
- Jquery easyui tabs 指定显示tabs页
- 怎样在easyUi里面获取到easyui-tree
- easyui datebox日期控件显示到月
- easyui ---tree
- easyUI Tree
- easyui Tree
- easyui-tree
- easyui tree
- easyUI-tree
- EasyUI-Tree
- easyUI-tree
- Linux shell 循环for and while
- 001 Two Sum
- 禁用Button按钮
- MySql基础笔记_17-06-29
- Linux(CentOS 7.3)下快速查看环境变量
- easyui-tree 显示到指定层次
- JavaScript对象之String
- 一个比较好的Web框架概括(备用,只是框架这个词,没有技术内容)
- App测试技能树
- 数据库索引以及优化
- Servlet
- 7. Reverse Integer-python
- matlab在图片上写字后保存
- TCP报头标志位URG/PSH/SYN/ACK/FIN/RST