当前位置:首页 > 日记 > 正文

Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码

Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码

TreePanel继承自Panel,在ExtJS中使用树控件含有丰富的属性和方法实现复杂的功能。其中Ext.tree.TreeNode代表一个树节点,比较常用的属性包括text、id、icon、checked等、异步树Ext.tree.AsyncTreeNode、树加载器Ext.tree.TreeLoader。下面介绍Extjs 中的 Treepanel 实现菜单级联选中效果。

在 treepanel 里添加以下代码即可实现级联选中效果

主要实现了以下效果:

1.点击父级批量设置所有子节点选中状态

2.点击当前节点寻找所有父级并设置选中状态

3.取消当前节点并取消所有子节点选中状态

4.取消当前节点根据需要取消上级节点的选中状态

listeners:{  checkchange:function(node,checked,eOpts){    // 批量设置子节点选中效果    function setChildChecked(pNode){      pNode.set('checked',checked);      pNode.eachChild(function(child){        arguments.callee(child);      })    }    setChildChecked(node);    // 当前节点取消选中时 需要判断当前节点的父节点下的所有子节点是否都不是选中状态    function setParentCheckedFalse(currentNode){      var parentNode = currentNode.parentNode,        isValid = true;      if(parentNode != null){        if(checked == false){          parentNode.eachChild(function (child) {            if(child.get('checked') != false){              isValid = false;              return false;            }          });          if(isValid){            parentNode.set('checked',checked);          }        }else{          parentNode.set('checked',true);        }        arguments.callee(parentNode)      }    }    setParentCheckedFalse(node);  }}

总结

以上所述是小编给大家介绍的Extjs 中 Treepanel 实现菜单级联选中效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

相关文章

Js利用console计算代码运行时间的

Js利用console计算代码运行时间的

方法,运行时间,计算,示例,代码,前言本文主要给大家介绍了关于Js用console计算代码运行时间的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。需求如果学习前端一定时间以后,就会考虑性能方面的问题。那么问题来了,我…

PHP实现的分页类定义与用法示例

PHP实现的分页类定义与用法示例

分页,类定义,示例,电脑软件,PHP,本文实例讲述了PHP实现的分页类定义与用法。分享给大家供大家参考,具体如下:<?php class Page { private $total; //总记录 private $pagesize; //每页显示多少条 private $limit; //limi…

Excel中进行表格打开闪退的操作方

Excel中进行表格打开闪退的操作方

闪退,操作方法,表格,操作步骤,电脑软件,  刚刚一同事说用的Office 2003 Excel表格一打开就闪退了,开始还以为是中毒了。经过了解是Excel 模版文件损坏了,删除坏的就可以了。今天,小编就教大家在Excel中进行表格打开闪退的操作方法。Excel中…

word中大括号怎么打

word中大括号怎么打

括号,中大,电脑软件,word,近日有同学反应在word中输入大括号遇到了困难,因为他需要输入一个很大的大括号。小编把大括号怎么打的几种方法都整理出来供大家参考。一、普通输入大括号1.Shift+中/大括号键(一般都在字母P键的右边)如果是英文大…

JS中正则表达式要注意lastIndex属

JS中正则表达式要注意lastIndex属

正则,属性,表达式,要注意,电脑软件, 说明这篇文章,主要和大家聊聊JavaScript中RegExp对象的属性。解释每个RegExp对象都包含5个属性,source、global、ignoreCase、multiline、lastIndex。source:是一个只读的字符串,包含正则表达式的文本。var …

Windows7安装IIS的方法-Win7安装II

Windows7安装IIS的方法-Win7安装II

安装,方法,教程,电脑软件,IIS,如果想在Windows7下安装IIS,首先确定你的Win7版本。必须是Windows7旗舰版、Windows7专业版或者Windows7企业版才有IIS组件,而Win7 Home(家庭版)是没有IIS的。Windows7安装IIS7的方法其实icech发现Windows7旗舰版安…

photoshop怎么使用置换滤镜?

photoshop怎么使用置换滤镜?

滤镜,电脑软件,photoshop,photoshop是一个很有趣的软件,我们可以通过它来实现很多看起来比较高大上的效果。今天,小编就来向大家介绍photoshop中一个不太被注意到的,但是比较有用和好玩的滤镜效果&mdash;&mdash;置换滤镜,通过它我们可以实现&ld…

win10 defender如何隐藏

win10 defender如何隐藏

电脑软件,defender,Windows 10 至发布以来就内置集成了 Windows Defender 安全防护应用,但有许多用户平常压根儿就没注意到它的存在。微软为了使安全防护功能更加明显,Windows 10 周年更新中将 Windows Defender 图标列到了任务栏通知区域,以…

JS点击缩略图整屏居中放大效果

JS点击缩略图整屏居中放大效果

缩略图,效果,电脑软件,JS,需要实现的效果图:今天开发的时候,遇到要点击缩略图之后居中显示图片的大图查看(大致效果如上图所示)~想了好几种实现方式,最开始的时候,是想通过animate来点击图片进行显示,可是后来当我想要让放大的图片进行居中显示和…

怎么把新浪微博账号注销

怎么把新浪微博账号注销

账号,注销,新浪微博,电脑软件,就在最近,新浪微博悄悄的推出了注销账号的通道。但是注销账号通道很隐蔽,一些用户不清楚怎么操作,那么下面小编就为大家带来了微博账号的注销教程,希望对你有所帮助。微博app账号注销的方法:1、如果想要将自己的微…

性能优化之代码优化页面加载速度

性能优化之代码优化页面加载速度

页面加载,代码优化,性能优化,速度,电脑软件,页面代码的优化对于页面加载速度也有不小的影响,最广为人知的:HTML头部的JavaScript和写在HTML标签中的Style会阻塞页面的渲染,因此CSS放在页面头部并使用Link方式引入,JavaScript的引入放在页面尾。…

PHP实现链式操作的三种方法详解

PHP实现链式操作的三种方法详解

方法,操作,链式,三种,详解,本文实例讲述了PHP实现链式操作的三种方法。分享给大家供大家参考,具体如下:在php中有很多字符串函数,例如要先过滤字符串收尾的空格,再求出其长度,一般的写法是:strlen(trim($str))如果要实现类似js中的链式操作,比如像…