关于extjs treepanel复选框选中父节点与子节点的问题


Posted in Javascript onApril 02, 2013

关于extjs treepanel复选框选中父节点与子节点的问题 
extjs 如图,实现带有复选框的树,选中父节点时,选中所有子节点。取消所有子节点时,才能取消根节点。

var Fpanel = new Ext.tree.TreePanel({ 
id:'ptree', 
region:'west', 
layout:'anchor', 
border:false, 
rootVisible: false, 
root:new Ext.tree.AsyncTreeNode({}), 
listeners:{ 
"checkchange": function(node, state) { 
if (node.parentNode != null) { 
//子节点选中 
node.cascade(function(node){ 
node.attributes.checked = state; 
node.ui.checkbox.checked = state; 
return true; 
}); 
//父节点选中 
var pNode = node.parentNode; 
if (state || Fpanel.getChecked(id, pNode) == "") { 
pNode.ui.toggleCheck(state); 
pNode.attributes.checked = state; 
} 
} 
} 
} 
}); 
authorityTree(Fpanel); 
var authorityTree = function(Fpanel){ 
Ext.Ajax.request({ 
url: 'authorityTree.ashx', 
method:'get', 
success: function(request) { 
var data = Ext.util.JSON.decode(request.responseText); 
Fpanel.getRootNode().appendChild(data); 
Fpanel.getRootNode().expandChildNodes(true); 
Fpanel.expandAll(); 
}, 
failure: function() { 
Fpanel.render(); 
Ext.MessageBox.show({ 
title: '提示', 
msg: '服务器忙,请使用火狐浏览器浏览或稍后重试!', 
buttons: Ext.MessageBox.OK, 
icon: Ext.MessageBox.ERROR 
}); 
} 
}); 
}
Javascript 相关文章推荐
javascript 播放器 控制
Jan 22 Javascript
javascript 动态添加事件代码
Nov 30 Javascript
javascript &&和||运算法的另类使用技巧
Nov 28 Javascript
JavaScript中的setMilliseconds()方法使用详解
Jun 11 Javascript
JavaScript学习笔记之创建对象
Mar 25 Javascript
JavaScript利用Date实现简单的倒计时实例
Jan 12 Javascript
JavaScript实现审核流程状态的动态显示进度条
Mar 15 Javascript
微信小程序实现下拉刷新和轮播图效果
Nov 21 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
Jul 30 Javascript
js form表单input框限制20个字符,10个汉字代码实例
Apr 12 Javascript
vue下使用nginx刷新页面404的问题解决
Aug 02 Javascript
vue下canvas裁剪图片实例讲解
Apr 16 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
UpdatePanel和Jquery冲突的解决方法
Apr 01 #Javascript
You might like
php学习笔记(三)操作符与控制结构
2011/08/06 PHP
CI框架装载器Loader.php源码分析
2014/11/04 PHP
PHP 数组黑名单/白名单实例代码详解
2019/06/04 PHP
小型js框架veryide.librar源代码
2009/03/05 Javascript
利用JQuery为搜索栏增加tag提示
2009/06/22 Javascript
JavaScript 学习笔记(五)
2009/12/31 Javascript
JS中Iframe之间传值的方法
2013/03/11 Javascript
js字符串转换成xml对象并使用技巧解读
2013/04/18 Javascript
jquery设置按钮停顿3秒不可用
2014/03/07 Javascript
document.compatMode的CSS1compat使用介绍
2014/04/03 Javascript
实现图片预加载的三大方法及优缺点分析
2014/11/19 Javascript
使用js复制链接中的部分文字的方法
2015/07/30 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
2016/02/25 Javascript
JavaScript实现清空(重置)文件类型INPUT元素值的方法
2016/11/17 Javascript
vue地址栏直接输入路由无效问题的解决
2018/11/15 Javascript
详解如何快速配置webpack多入口脚手架
2018/12/28 Javascript
Vuex的实战使用详解
2019/10/31 Javascript
JS绘图Flot应用图形绘制异常解决方案
2020/10/16 Javascript
uni-app使用countdown插件实现倒计时
2020/11/01 Javascript
Python实现发送email的几种常用方法
2014/08/18 Python
Python中实现字符串类型与字典类型相互转换的方法
2014/08/18 Python
python利用跳板机ssh远程连接redis的方法
2019/02/19 Python
python剪切视频与合并视频的实现
2020/03/03 Python
pycharm如何使用anaconda中的各种包(操作步骤)
2020/07/31 Python
Python 实现微信自动回复的方法
2020/09/11 Python
python matplotlib绘制三维图的示例
2020/09/24 Python
在python3.9下如何安装scrapy的方法
2021/02/03 Python
python如何修改文件时间属性
2021/02/05 Python
Canvas在超级玛丽游戏中的应用详解
2021/02/06 HTML / CSS
市优秀教师事迹材料
2014/02/05 职场文书
纠风工作实施方案
2014/03/15 职场文书
2014年打非治违工作总结
2014/11/13 职场文书
小学生作文评语集锦
2014/12/25 职场文书
办公室主任个人总结
2015/02/28 职场文书
外出学习心得体会范文
2016/01/18 职场文书
oracle表分区的概念及操作
2021/04/24 Oracle