当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Javascript 实现TreeView CheckBox全选效果

Javascript
经验几则 推荐
一个很Cool的JS菜单效果
[原创]菜单制作学习一个小东西
基于Web标准的UI组件 — 树状菜单(2)
[原创]防止网站内容被小偷采集的js代码
javascript字典探测用户名工具
通过ifame指向的页面高度调整iframe的高度
实例:尽可能写友好的Javascript代码
关于javascript的“静态类"
拖动层
教学演示-UBB,剪贴板,textRange及其他
多线程的全选复选框
不错的一个日期输入 动态
非常不错的一个javascript 类
提示广告代码
各种浏览器兼容问题
重定向实现代码
[原创]网络复制内容时常用的正则+editplus
Js的MessageBox
注释的艺术:JS里直接写HTML,无需转义

Javascript 实现TreeView CheckBox全选效果


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-20   浏览: 389 ::
收藏到网摘: n/a

Javascript 实现TreeView CheckBox 选中父节点时所有子节点全选,取消时全部取消
复制代码 代码如下:

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()");
}