Javascript 实现TreeView CheckBox全选效果


Posted in Javascript onJanuary 11, 2010
function OnTreeNodeChecked() { 
var ele = event.srcElement; 
if (ele.type == 'checkbox') { 
var childrenDivID = ele.id.replace('CheckBox', 'Nodes'); 
var div = document.getElementById(childrenDivID); 
if (div != null) { 
var checkBoxs = div.getElementsByTagName('INPUT'); 
for (var i = 0; i < checkBoxs.length; i++) { 
if (checkBoxs[i].type == 'checkbox') 
checkBoxs[i].checked = ele.checked; 
} 
} 
OnTreeNodeChildChecked(ele); } 
} 
function OnTreeNodeChildChecked(ele) { 
//自动处理上级 
var parentDiv = ele.parentElement.parentElement.parentElement.parentElement.parentElement; 
var parentChkBox = document.getElementById(parentDiv.id.replace('Nodes', 'CheckBox')); 
if (parentChkBox != null) { 
var ChildsChkAll = true; 
var Boxs = parentDiv.getElementsByTagName('INPUT'); 
for (var i = 0; i < Boxs.length; i++) { 
if (Boxs[i].type == 'checkbox' && Boxs[i].checked == false) { 
ChildsChkAll = false; 
} 
} 
parentChkBox.checked = ChildsChkAll; 
OnTreeNodeChildChecked(parentChkBox); 
} 
}

CS文件中注册JavaScript:

void Page_Load(object sender,EventArgs e) 
{ 
this.TreeView.Attribute.Add("onclick","OnTreeNodeChecked()"); 
}
Javascript 相关文章推荐
formValidator3.3的ajaxValidator一些异常分析
Jul 12 Javascript
jquery实现盒子下拉效果示例代码
Sep 12 Javascript
深入理解JavaScript高级之词法作用域和作用域链
Dec 10 Javascript
Jqgrid设置全选(选择)及获取选择行的值示例代码
Dec 28 Javascript
详细解读JavaScript编程中的Promise使用
Jul 27 Javascript
js手动播放图片实现图片轮播效果
Sep 17 Javascript
Vue.js实现拖放效果的实例
Sep 30 Javascript
如何实现json数据可视化详解
Nov 24 Javascript
vue+SSM实现验证码功能
Dec 07 Javascript
Layui之table中的radio在切换分页时无法记住选中状态的解决方法
Sep 02 Javascript
vue实现井字棋游戏
Sep 29 Javascript
Vue.js中v-for指令的用法介绍
Mar 13 Vue.js
javascript下判断一个对象是否具有指定名称的属性的的代码
Jan 11 #Javascript
JavaScript 学习笔记(九)call和apply方法
Jan 11 #Javascript
取选中的radio的值
Jan 11 #Javascript
javascript Object与Function使用
Jan 11 #Javascript
Extjs学习笔记之九 数据模型(上)
Jan 11 #Javascript
JavaScript 事件冒泡简介及应用
Jan 11 #Javascript
Javascript 读书笔记索引贴
Jan 11 #Javascript
You might like
PHP脚本的10个技巧(7)
2006/10/09 PHP
Optimizer与Debugger兼容性问题的解决方法
2008/12/01 PHP
Yii2使用小技巧之通过 Composer 添加 FontAwesome 字体资源
2014/06/22 PHP
php出现内存位置访问无效错误问题解决方法
2014/08/16 PHP
PHP开发框架laravel安装与配置教程
2015/03/13 PHP
基于jquery的代码显示区域自动拉长效果
2011/12/07 Javascript
JS localStorage实现本地缓存的方法
2013/06/22 Javascript
返回页面顶部top按钮通过锚点实现(自写)
2013/08/30 Javascript
使用angular写一个hello world
2015/01/23 Javascript
原生JS实现日历组件的示例代码
2017/09/22 Javascript
vue.js语法及常用指令
2017/10/29 Javascript
vue打包之后生成一个配置文件修改接口的方法
2018/12/09 Javascript
vue实现全屏滚动效果(非fullpage.js)
2020/03/07 Javascript
Javascript Symbol原理及使用方法解析
2020/10/22 Javascript
vue 导航守卫和axios拦截器有哪些区别
2020/12/19 Vue.js
Python基于matplotlib绘制栈式直方图的方法示例
2017/08/09 Python
python中 logging的使用详解
2017/10/25 Python
使用python编写简单的小程序编译成exe跑在win10上
2018/01/15 Python
Python绘制正余弦函数图像的方法
2018/08/28 Python
Python正则表达式指南 推荐
2018/10/09 Python
Python函数装饰器实现方法详解
2018/12/22 Python
python实现逐个读取txt字符并修改
2018/12/24 Python
基于FME使用Python过程图解
2020/05/13 Python
python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码
2020/06/11 Python
使用tensorflow进行音乐类型的分类
2020/08/14 Python
Python离线安装各种库及pip的方法
2020/11/28 Python
html5 Canvas画图教程(4)—未闭合的路径及渐变色的填充方法
2013/01/09 HTML / CSS
读书伴我成长演讲稿
2014/05/07 职场文书
创建文明城市标语
2014/06/16 职场文书
民族团结演讲稿范文
2014/08/27 职场文书
2015年人事专员工作总结
2015/04/29 职场文书
培训感想范文
2015/08/07 职场文书
初中英语教学随笔
2015/08/15 职场文书
教师法制教育培训学习心得体会
2016/01/14 职场文书
施工安全协议书
2016/03/22 职场文书
常用的文件对应的MIME类型汇总
2022/04/26 HTML / CSS