Easyui Tree获取当前选择节点的所有顶级父节点

 更新时间:2017年02月14日 10:42:25   投稿:mrr  
这篇文章主要介绍了Easyui Tree获取当前选择节点的所有顶级父节点,以及easyUI Tree显示选中节点的所有父节点的实现代码,需要的朋友可以参考下

只支持四层目录结构,比较笨的一个方法

JS代码

var node = $('#tree').tree('getSelected'); 
 //获取该节点所有父节点 
           var parentAll = node.text; 
           var flag = ">>"; 
           parentAll = flag.concat(parentAll); 
           var parent = $('#tree').tree('getParent', node.target); 
           if(parent != null && parentOne != ''){ 
              parentAll = (parent.text).concat(parentAll); 
              var parentOne = $('#tree').tree('getParent', parent.target); 
              if(parentOne != null && parentOne != ''){ 
                parentAll = flag.concat(parentAll); 
                parentAll = (parentOne.text).concat(parentAll); 
                var parentTwo = $('#tree').tree('getParent', parentOne.target) 
                if(parentTwo != null && parentTwo != ''){ 
                  parentAll = flag.concat(parentAll); 
                  parentAll = (parentTwo.text).concat(parentAll); 
                } 
              } 
           } 
           $("#path").text(parentAll);  

JSP页面代码

<span style="font-size:12px;font-weight:bold;">当前节点:<b id="path"></b></span> 

下面看下easyUI Tree显示选中节点的所有父节点

功能需要,显示Tree上所选节点的所有父节点,如图:

这里写图片描述 

代码实现如下:

var str = "";
 var parentAll = "";
 parentAll = node.text;
 parentAll = parentAll.replace(/\[[^\)]*\]/g, ""); //获得所需的节点文本
 var flag = ",";
 var parent = $('#leftTree').tree('getParent', node.target); //获取选中节点的父节点
 for (i = 0; i < 6; i++) { //可以视树的层级合理设置I
   if (parent != null) {
     parentAll = flag.concat(parentAll);
     str = (parent.text).replace(/\[[^\)]*\]/g, "");
     parentAll = (str).concat(parentAll);
     var parent = $('#leftTree').tree('getParent', parent.target);
   }
 }
alert(parentAll);

结果显示:

这里写图片描述

总结:其实原理很简单,就是获取当前选中节点的父节点,然后通过循环,再求父节点的父节点。通过这个功能的实现,也见识到了查看API的好处!

相关文章

  • 通过JavaScript脚本复制网页上的一个表格

    通过JavaScript脚本复制网页上的一个表格

    通过JavaScript脚本复制网页上的一个表格...
    2006-07-07
  • JavaScript伪数组和数组的使用与区别

    JavaScript伪数组和数组的使用与区别

    这篇文章主要给大家介绍了关于JavaScript伪数组和数组使用与区别的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • canvas 2d 环形统计图手写实现示例

    canvas 2d 环形统计图手写实现示例

    这篇文章主要为大家介绍了canvas 2d 环形统计图手写实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • javascript制作坦克大战全纪录(2)

    javascript制作坦克大战全纪录(2)

    上文我们简单的完成了坦克大战的雏形,本文我们来继续完善坦克大战,接下来我们来学习制作地图和碰撞检测方面的问题。
    2014-11-11
  • javascript+jQuery实现360开机时间显示效果

    javascript+jQuery实现360开机时间显示效果

    这篇文章主要介绍了javascript+jQuery实现360开机时间显示效果,在文中给大家提到了js实现时间倒计时的代码,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-11-11
  • JS全角与半角转化实例(分享)

    JS全角与半角转化实例(分享)

    下面小编就为大家带来一篇JS全角与半角转化实例(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • layui表格内放置图片,并点击放大的实例

    layui表格内放置图片,并点击放大的实例

    今天小编就为大家分享一篇layui表格内放置图片,并点击放大的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • js和jq使用submit方法无法提交表单的快速解决方法

    js和jq使用submit方法无法提交表单的快速解决方法

    下面小编就为大家带来一篇js和jq使用submit方法无法提交表单的快速解决方法。小编觉得挺不错的,现在分享给大家,也给大家做个参考
    2016-05-05
  • 关于TypeScript模块导入的那些事

    关于TypeScript模块导入的那些事

    Typescrit的模块机制与es6的模块基本类似,也提供了转换为amd,es6,umd,commonjs,system的转换,下面这篇文章就来给大家详细介绍了关于TypeScript模块导入的那些事,需要的朋友可以参考借鉴,下面来一起看看吧
    2018-06-06
  • js实现图片无缝滚动特效

    js实现图片无缝滚动特效

    这篇文章主要为大家详细介绍了js实现图片无缝循环滚动特效的相关资料,本实例在网页中较为常见,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-01-01

最新评论