<script language="javascript"> function GoClick() { var obj = event.srcElement; if(obj.tagName.toUpperCase() != "INPUT") return; var tb = obj.parentElement.parentElement.parentElement.parentElement;//当前节点的Table SelAllChildren(tb,obj.checked); tb= tb.parentElement;// while(true) { tb = tb.previousSibling if( tb == null) return; SetParentCheckBoxStatus(tb); tb= tb.parentElement if( tb == null) return; } } function SelAllChildren(tb,checked) { var div = tb.nextSibling; try { for(var i=0;i<div.children.length;i++) { if(div.children[i].tagName.toUpperCase()!="TABLE")continue; var chkBox= FindRowCheckBox(div.children[i].rows[0]); if(chkBox == null) continue; chkBox.checked = checked; SelAllChildren(div.children[i],checked); } }catch(e){} } function SetParentCheckBoxStatus(objTb) { var div = objTb.nextSibling; var bSelAll = true; var bSelOne = false; for(var i=0;i<div.children.length;i++) { if(div.children[i].tagName.toUpperCase()!="TABLE")continue; var chkBox= FindRowCheckBox(div.children[i].rows[0]); if(!chkBox.checked) { bSelAll =false; }else { bSelOne = true; } } if(objTb.rows!= null) { var chkBox = FindRowCheckBox(objTb.rows[0]) chkBox.checked = bSelOne; } } function FindRowCheckBox(tr) { for(var i=0;i<tr.cells.length;i++) { if(tr.cells[i].firstChild.tagName == "INPUT") { return tr.cells[i].firstChild; } } } function CheckDeleteTree(form,treeviewid) { if(document.getElementById(treeviewid+"_SelectedNode").value == "") { alert("请选择!"); return }else { return confirm("确定?"); } } </script> <asp:TreeView ID="TreeView1" runat="server" ShowCheckBoxes="All" ShowLines="True" οnclick="javascript:GoClick()"> </asp:TreeView>