View Code
function CheckSub() {
var ClickChecked = $(this).attr("checked");
var ClickID = $(this).attr("id").toString();
var SubID = ClickID.replace("CheckBox", "Nodes");
$("#" + SubID).find("input[type='checkbox']").attr("checked", ClickChecked);
//获取选中的checkbox的部门ID
var DeptIDS = "";
$("#TreeView1").find("input[type='checkbox']").each(function (i) {
var checked = $(this).attr("checked");
if (checked == true) {
DeptIDS = DeptIDS + "," + $(this).attr("title").toString();
}
});
}
View Code
$(document).ready(function () {
$("input[type='checkbox']").bind("click", CheckSub);
});
ASP.Net 2.0 Treeview
自动生成的
Html
脚本结构如下:
<div> //
树
<table/> //
节点
<div/> //
节点的子节点,里面的内容是一个或多个
<table/><div/>
</div>
因此是
<table/><div/>
构成一个节点,但很难明确的在
DOM
中确定一个节点,原因如下:
1.
其
ID
或
Name
是顺序排列的,命名规则如下:
树
ID + “n” +
节点序号,例如
MyTreen0
商业的
TreeView
一般在
ID
中包含层次信息,如
: MyTreeNode1_1_2
表示树的
1.1.2
那个节点,分析起来很容易
2.
上面描述的节点命名的
ID
,是分配给
<table/>
里的
<A/>
也就是显示
加号
减号的那个链接元素,由于该元素在
<table/>
中,因此给分析带来了难度
3.
叶子节点没有上面所描述的
<table/>
里的那个
<A/>
用当前选中的checkbox的ID MyTreen0Checkbox去掉 checkbox(替换为Nodes) 得到的是节点的node的ID MyTreen0Nodes
再用这个节点的ID来获取其孩子是checkbox的所有ID并进行相应的操作