关于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中的location用法简单介绍
Mar 07 Javascript
javascript下IE与FF兼容函数收集
Sep 17 Javascript
jQuery 源代码显示控件 (Ajax加载方式).
May 18 Javascript
js面向对象 多种创建对象方法小结
May 21 Javascript
javascript 通用loading动画效果实例代码
Jan 14 Javascript
全面解析Bootstrap中form、navbar的使用方法
May 30 Javascript
简单实现node.js图片上传
Dec 18 Javascript
javascript常用经典算法详解
Jan 11 Javascript
JS实现的简单拖拽购物车功能示例【附源码下载】
Jan 03 Javascript
Three.js实现3D机房效果
Dec 30 Javascript
js中对象与对象创建方法的各种方法
Feb 27 Javascript
JavaScript实现拖拽盒子效果
Feb 06 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
构建简单的Webmail系统
2006/10/09 PHP
PHP中上传文件打印错误错误类型分析
2019/04/14 PHP
Prototype1.5 rc2版指南最后一篇之Position
2007/01/10 Javascript
javascript 表单验证常见正则
2009/09/28 Javascript
基于jquery的代码显示区域自动拉长效果
2011/12/07 Javascript
获得所有表单值的JQuery实现代码[IE暂不支持]
2012/05/24 Javascript
自编jQuery插件实现模拟alert和confirm
2014/09/01 Javascript
DOM节点深度克隆函数cloneNode()用法实例
2015/01/12 Javascript
深入分析下javascript中的[]()+!
2015/07/07 Javascript
js实现三张图(文)片一起切换的banner焦点图
2015/08/25 Javascript
angularjs 中$apply,$digest,$watch详解
2016/10/13 Javascript
canvas实现动态小球重叠效果
2017/02/06 Javascript
Angular.JS通过指令操作DOM的方法
2017/05/10 Javascript
详解vue+vueRouter+webpack的简单实例
2017/06/17 Javascript
Javascript中this关键字指向问题的测试与详解
2017/08/11 Javascript
微信小程序实现下拉刷新和轮播图效果
2017/11/21 Javascript
js中null与空字符串""的区别讲解
2019/01/17 Javascript
详解关于webpack多入口热加载很慢的原因
2019/04/24 Javascript
微信小程序实现选择地址省市区三级联动
2020/06/21 Javascript
Vue实现省市区三级联动
2020/12/27 Vue.js
js中延迟加载和预加载的具体使用
2021/01/14 Javascript
[42:52]Optic vs Serenity 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
Python实现在线音乐播放器
2017/03/03 Python
python sys,os,time模块的使用(包括时间格式的各种转换)
2018/04/27 Python
python实现自动登录
2018/09/17 Python
用 python 进行微信好友信息分析
2020/11/28 Python
html5的自定义data-*属性与jquery的data()方法的使用
2014/07/02 HTML / CSS
新加坡网上化妆品店:Best Buy World
2018/05/18 全球购物
意大利和国际最佳时尚品牌:Drestige
2019/12/28 全球购物
EJB与JAVA BEAN的区别
2016/08/29 面试题
创业计划书的内容步骤和要领
2014/01/04 职场文书
Windows下redis下载、redis安装及使用教程
2021/06/02 Redis
Python+腾讯云服务器实现每日自动健康打卡
2021/12/06 Python
Python Pytorch查询图像的特征从集合或数据库中查找图像
2022/04/09 Python
解决IDEA翻译插件Translation报错更新TTK失败不能使用
2022/04/24 Python
el-form每行显示两列底部按钮居中效果的实现
2022/08/05 HTML / CSS