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 相关文章推荐
jQuery autocomplete插件修改
Apr 17 Javascript
js中设置元素class的三种方法小结
Aug 28 Javascript
onbeforeunload与onunload事件异同点总结
Jun 24 Javascript
select多选 multiple的使用示例
Jun 16 Javascript
js实现字符串转日期格式的方法
May 20 Javascript
JQuery工具函数汇总
Jun 15 Javascript
javascript封装 Cookie 应用接口
Aug 07 Javascript
JS实现超简单的仿QQ折叠菜单效果
Sep 21 Javascript
浅谈js构造函数的方法与原型prototype
Jul 04 Javascript
JS开发中基本数据类型具体有哪几种
Oct 19 Javascript
vue 表单验证按钮事件交由父组件触发的方法
Dec 17 Javascript
seajs和requirejs模块化简单案例分析
Aug 26 Javascript
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 memcache扩展的三种安装方法
2009/04/26 PHP
php格式化日期和时间格式化示例分享
2014/02/24 PHP
Yii2 rbac权限控制操作步骤实例教程
2016/04/29 PHP
CI框架中类的自动加载问题分析
2016/11/21 PHP
php从数据库中获取数据用ajax传送到前台的方法
2018/08/20 PHP
在你的网页中嵌入外部网页的方法
2007/04/02 Javascript
javascript Ext JS 状态默认存储时间
2009/02/15 Javascript
js下用gb2312编码解码实现方法
2009/12/31 Javascript
使用cluster 将自己的Node服务器扩展为多线程服务器
2014/11/10 Javascript
js实现固定显示区域内自动缩放图片的方法
2015/07/18 Javascript
jQuery实现内容定时切换效果完整实例
2016/04/06 Javascript
基于BootstrapValidator的Form表单验证(24)
2016/12/12 Javascript
javascript学习之json入门
2016/12/22 Javascript
bootstrap table实例详解
2017/01/06 Javascript
jQuery实现验证码功能
2017/03/17 Javascript
配置nodejs环境的方法
2017/05/13 NodeJs
layer.open 按钮的点击事件关闭方法
2018/08/17 Javascript
Angular使用Restful的增删改
2018/12/28 Javascript
layui实现二维码弹窗、并下载到本地的方法
2019/09/25 Javascript
[02:09]2018DOTA2亚洲邀请赛TNC赛前采访
2018/04/04 DOTA
python基础教程之数字处理(math)模块详解
2014/03/25 Python
举例讲解如何在Python编程中进行迭代和遍历
2016/01/19 Python
Python md5与sha1加密算法用法分析
2017/07/14 Python
代码实例讲解python3的编码问题
2019/07/08 Python
Python爬虫:url中带字典列表参数的编码转换方法
2019/08/21 Python
Python re正则表达式元字符分组()用法分享
2020/02/10 Python
基于django micro搭建网站实现加水印功能
2020/05/22 Python
Python3读取和写入excel表格数据的示例代码
2020/06/09 Python
英国香水店:The Perfume Shop
2017/03/27 全球购物
平面设计岗位职责
2013/12/14 职场文书
乡镇办公室工作决心书
2014/03/11 职场文书
幼儿园六一儿童节主持节目串词
2014/03/21 职场文书
幼儿园课题方案
2014/06/09 职场文书
公司领导班子四风对照检查材料
2014/09/27 职场文书
八一建军节慰问信
2015/02/14 职场文书
2016年母亲节寄语
2015/12/04 职场文书