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 相关文章推荐
浅析JavaScript原型继承的陷阱
Dec 03 Javascript
jquery导航制件jquery鼠标经过变色效果示例
Dec 05 Javascript
将form表单中的元素转换成对象的方法适用表单提交
May 02 Javascript
ExtJs动态生成treepanel的Json格式
Jul 19 Javascript
基于javascript实现最简单的选项卡切换效果
May 16 Javascript
jQuery实现简单的网页换肤效果示例
Sep 18 Javascript
JS实现表单验证功能(验证手机号是否存在,验证码倒计时)
Oct 11 Javascript
微信小程序开发之圆形菜单 仿建行圆形菜单实例
Dec 12 Javascript
jQuery实现字符串全部替换的方法【推荐】
Mar 09 Javascript
详解Vue的钩子函数(路由导航守卫、keep-alive、生命周期钩子)
Jul 24 Javascript
基于vue实现移动端圆形旋钮插件效果
Nov 28 Javascript
vue界面发送表情的实现代码
Sep 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
php使用curl模拟登录后采集页面的例子
2013/11/04 PHP
php获取字符串中各个字符出现次数的方法
2015/02/23 PHP
PHP使用mysqli操作MySQL数据库的简单方法
2017/02/04 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
用javascript实现页面打印的三种方法
2007/03/05 Javascript
jQuery在html有效在jsp无效的原因及解决方法
2013/08/02 Javascript
javascript动态创建链接的方法
2015/05/13 Javascript
jQuery实现表单步骤流程导航代码分享
2015/08/28 Javascript
jquery实现美观的导航菜单鼠标提示特效代码
2015/09/06 Javascript
全面理解闭包机制
2016/07/11 Javascript
手机端实现Bootstrap简单图片轮播效果
2016/10/13 Javascript
Angular.JS内置服务$http对数据库的增删改使用教程
2017/05/07 Javascript
jQuery 禁止表单用户名、密码自动填充功能
2017/10/30 jQuery
easyui下拉框动态级联加载的示例代码
2017/11/29 Javascript
微信小程序实现预览图片功能
2020/10/22 Javascript
微信小程序实现吸顶效果
2020/01/08 Javascript
Vue通过provide inject实现组件通信
2020/09/03 Javascript
Python3.2中的字符串函数学习总结
2015/04/23 Python
Python Web框架Tornado运行和部署
2020/10/19 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
python3爬取数据至mysql的方法
2018/06/26 Python
python实现网页自动签到功能
2019/01/21 Python
python占位符输入方式实例
2019/05/27 Python
Python实现敏感词过滤的4种方法
2020/09/12 Python
宝拉珍选美国官网:Paula’s Choice美国
2018/01/07 全球购物
大学生学习党课思想汇报
2014/01/03 职场文书
书香校园建设方案
2014/05/02 职场文书
五水共治一句话承诺
2014/05/30 职场文书
职务任命书范本
2014/06/05 职场文书
市场营销毕业求职信
2014/08/07 职场文书
学习党的群众路线对照检查材料
2014/09/29 职场文书
建筑工地资料员岗位职责
2015/04/13 职场文书
「海贼王」112.9万粉丝纪念图标公布
2022/03/21 日漫
PYTHON使用Matplotlib去实现各种条形图的绘制
2022/03/22 Python
win11无法登录onedrive错误代码0x8004def7怎么办 ?
2022/04/05 数码科技
React四级菜单的实现
2022/04/08 Javascript