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

Javascript
各种浏览器兼容问题
取得父标签
JS用 或 || 来兼容FireFox!
JavaScript的Function详细
关于IE只能嵌套27层表格的说法证明
xmlHTTP返回值重编码的优化
静态网页加密
来访统计
炽热的文字
发一个分页的js
琥珀无限级联动菜单-JavaScript版
用javascript连接access数据库的方法
用js得到网页中所有的div的id
cloneNode实现表格增加删除效果
支持IE和FF的div+css选项卡
arguments对象
使两个iframe的高度与内容自适应,且相等
云网广告中的代码,提示出错,大家找找
document.all与WEB标准
表单内同名元素的控制

Javascript 实现TreeView CheckBox全选效果


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-20   浏览: 199 ::
收藏到网摘: 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()");
}