extjs关于treePanel+chekBox全部选中以及清空选中问题探讨


Posted in Javascript onApril 02, 2013
//树 
var treePanel = new Ext.tree.TreePanel({ 
id:'ptree', 
region:'west', 
layout:'anchor', 
border:false, 
rootVisible: false, 
root:{}, 
listeners:{ 
render: function() { 
authorityTree(treePanel); /*渲染树*/ 
}, 
checkchange: function(node, state) { 
if (node.parentNode != null) { 
//选中子节点让相应的父节点选中 
var pNode = node.parentNode; 
if (state || treePanel.getChecked(id, pNode) == "") { 
pNode.ui.toggleCheck(state);// 触发父节点被选中 
pNode.attributes.checked = state; 
} 
} 
treeId = node.attributes.id; 
treeName = node.attributes.text; 
} 
} 
}); 
//操作按钮 
tbar: [{ 
id: 'btnQingKong', 
text: '清空', 
iconCls: 'winupdate-icon', 
handler: function() { 
var nodes = Ext.getCmp('ptree').getChecked(); 
if (nodes && nodes.length) { 
for (var i = 0; i < nodes.length; i++) { 
//设置UI状态为未选中状态 
nodes[i].getUI().toggleCheck(false); 
//设置节点属性为未选中状态 
nodes[i].attributes.checked = false; 
} 
} 
} 
},{ 
id: 'btnQuanXuan', 
text: '全选', 
iconCls: 'winupdate-icon', 
handler: function() { 
var nodeT = Ext.getCmp('ptree').getRootNode(); 
treeCheckTrue(nodeT); 
} 
}] 
/** 
*checkTree全选 
*/ 
var treeCheckTrue = function(node) 
{ 
node.eachChild(function (child) { 
child.getUI().toggleCheck(true); 
child.attributes.checked = true; 
treeCheckTrue(child); 
}); 
} 
/** 
*checkTree清空 
*/ 
var treeCheckfalse = function(tree) 
{ 
var nodes = tree.getChecked(); 
if(nodes && nodes.length){ 
for(var i=0;i<nodes.length;i++){ 
//设置UI状态为未选中状态 
nodes[i].getUI().toggleCheck(false); 
//设置节点属性为未选中状态 
nodes[i].attributes.checked=false; 
} 
} 
}
Javascript 相关文章推荐
js下拉菜单语言选项简单实现
Sep 23 Javascript
JS截取字符串常用方法详细整理
Oct 28 Javascript
javascript匿名函数实例分析
Nov 18 Javascript
js函数与php函数的区别实例浅析
Jan 12 Javascript
javascript中Object使用详解
Jan 26 Javascript
JavaScript中的DSL元编程介绍
Mar 15 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
Oct 30 Javascript
jquery插入兄弟节点的操作方法
Dec 07 Javascript
js cookie实现记住密码功能
Jan 17 Javascript
微信小程序使用Socket的实例
Sep 19 Javascript
Js判断H5上下滑动方向及滑动到顶部和底部判断的示例代码
Nov 15 Javascript
JsonProperty 的使用方法详解
Oct 11 Javascript
关于extjs treepanel复选框选中父节点与子节点的问题
Apr 02 #Javascript
extjs tabpanel限制选项卡数量实现思路及代码
Apr 02 #Javascript
extjs 3.31 TreeGrid实现静态页面加载json到TreeGrid里面
Apr 02 #Javascript
Extjs4.0设置Ext.data.Store传参的请求方式(默认为GET)
Apr 02 #Javascript
Extjs 3.3切换tab隐藏相应工具栏出现空白解决
Apr 02 #Javascript
ExtJS下 Ext.Direct加载和提交过程排错小结
Apr 02 #Javascript
ExtJS下书写动态生成的xml(兼容火狐)
Apr 02 #Javascript
You might like
关于mysql 字段的那个点为是定界符
2007/01/15 PHP
谈谈关于php的优点与缺点
2013/04/11 PHP
Symfony2中被遗弃的getRequest()方法分析
2016/03/17 PHP
thinkphp的dump函数无输出实例代码
2016/11/15 PHP
[原创]PHP实现SQL语句格式化功能的方法
2017/07/28 PHP
ThinkPHP框架中使用Memcached缓存数据的方法
2018/03/31 PHP
thinkphp5引入公共部分header、footer的方法详解
2018/09/14 PHP
Prototype使用指南之array.js
2007/01/10 Javascript
用nodejs写的一个简单项目打包工具
2013/05/11 NodeJs
jquery ajax方式直接提交整个表单核心代码
2013/08/15 Javascript
jquery iframe操作详细解析
2013/11/20 Javascript
点击按钮自动加关注的代码(sina微博/QQ空间/人人网/腾讯微博)
2014/01/02 Javascript
JS 实现列表与多选框选择附预览动画
2014/10/29 Javascript
浅谈javascript中的闭包
2015/05/13 Javascript
JS基于构造函数实现的菜单滑动显隐效果【测试可用】
2016/06/21 Javascript
关于Javascript中document.cookie的使用
2017/03/08 Javascript
AngularJS实现的2048小游戏功能【附源码下载】
2018/01/03 Javascript
使用layui 渲染table数据表格的实例代码
2018/08/19 Javascript
JavaScript Array对象基本方法详解
2019/09/03 Javascript
使用vue-router切换页面时实现设置过渡动画
2019/10/31 Javascript
python使用xmlrpc实例讲解
2013/12/17 Python
JPype实现在python中调用JAVA的实例
2017/07/19 Python
python绘制散点图并标记序号的方法
2018/12/11 Python
解决新版Pycharm中Matplotlib图像不在弹出独立的显示窗口问题
2019/01/15 Python
使用python Telnet远程登录执行程序的方法
2019/01/26 Python
20行python代码实现人脸识别
2019/05/05 Python
python正则表达式的懒惰匹配和贪婪匹配说明
2020/07/13 Python
matplotlib 范围选区(SpanSelector)的使用
2021/02/24 Python
法国美发器材和产品购物网站:Beauty Coiffure
2016/12/05 全球购物
Pure Collection美国官网:来自英国羊绒专家的奢华羊绒
2017/11/19 全球购物
应届生求职信写作技巧
2013/10/24 职场文书
2014年迎新年活动方案
2014/02/19 职场文书
团支部建设方案
2014/05/02 职场文书
教育系统干部作风整顿心得体会
2014/09/09 职场文书
学校后勤工作总结2015
2015/05/15 职场文书
医务人员医德医风心得体会
2016/01/25 职场文书