首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

TreeView节点选择有关问题

2012-02-23 
TreeView节点选择问题我想写一段JavaScript就是VS2005的TreeView中父节点的CheckBox被点击则其下的所有子

TreeView节点选择问题
我想写一段JavaScript  

就是VS2005的TreeView中父节点的CheckBox被点击   则其下的所有子节点也被选中

子节点只要有一个选择   父节点也被选择上

子节点没有一个被选择   父节点就取消选择

生成的Html如下例子:

<table   cellpadding= "0 "   cellspacing= "0 "   style= "border-width:0; ">
<tr>
<td> <a   id= "TreeView1n28 "   href= "javascript:TreeView_ToggleNode(TreeView1_Data,28,TreeView1n28, 't ',TreeView1n28Nodes) "> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFA9ltkOC-cU-wJ81PkoaXKc1&amp;t=633068737011406250 "   alt= "展开   华东区 "   style= "border-width:0; "   /> </a> </td> <td   style= "white-space:nowrap; "> <input   type= "checkbox "   name= "TreeView1n28CheckBox "   id= "TreeView1n28CheckBox "   checked= "checked "   title= "华东区 "   /> <span   class= "TreeView1_0 "   id= "TreeView1t28 "> 华东区 </span> </td>
</tr>
</table> <div   id= "TreeView1n28Nodes "   style= "display:none; ">
<table   cellpadding= "0 "   cellspacing= "0 "   style= "border-width:0; ">
<tr>
<td> <div   style= "width:20px;height:1px "> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFOzOfgqIxtJDD6seXXB6xXU1&amp;t=633068737011406250 "   alt= " "   /> </div> </td> <td> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFMm61_VsPsrfJiowqo-RHiM1&amp;t=633068737011406250 "   alt= " "   /> </td> <td   style= "white-space:nowrap; "> <input   type= "checkbox "   name= "TreeView1n29CheckBox "   id= "TreeView1n29CheckBox "   checked= "checked "   title= "徐州成功店 "   /> <span   class= "TreeView1_0 "   id= "TreeView1t29 "> 徐州成功店 </span> </td>
</tr>
</table> <table   cellpadding= "0 "   cellspacing= "0 "   style= "border-width:0; ">
<tr>
<td> <div   style= "width:20px;height:1px "> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFOzOfgqIxtJDD6seXXB6xXU1&amp;t=633068737011406250 "   alt= " "   /> </div> </td> <td> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFMm61_VsPsrfJiowqo-RHiM1&amp;t=633068737011406250 "   alt= " "   /> </td> <td   style= "white-space:nowrap; "> <input   type= "checkbox "   name= "TreeView1n30CheckBox "   id= "TreeView1n30CheckBox "   checked= "checked "   title= "南通七彩店 "   /> <span   class= "TreeView1_0 "   id= "TreeView1t30 "> 南通七彩店 </span> </td>
</tr>
</table> <table   cellpadding= "0 "   cellspacing= "0 "   style= "border-width:0; ">
<tr>
<td> <div   style= "width:20px;height:1px "> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFOzOfgqIxtJDD6seXXB6xXU1&amp;t=633068737011406250 "   alt= " "   /> </div> </td> <td> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFMm61_VsPsrfJiowqo-RHiM1&amp;t=633068737011406250 "   alt= " "   /> </td> <td   style= "white-space:nowrap; "> <input   type= "checkbox "   name= "TreeView1n31CheckBox "   id= "TreeView1n31CheckBox "   checked= "checked "   title= "宁波鼓楼店 "   /> <span   class= "TreeView1_0 "   id= "TreeView1t31 "> 宁波鼓楼店 </span> </td>


</tr>
</table> <table   cellpadding= "0 "   cellspacing= "0 "   style= "border-width:0; ">
<tr>
<td> <div   style= "width:20px;height:1px "> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFOzOfgqIxtJDD6seXXB6xXU1&amp;t=633068737011406250 "   alt= " "   /> </div> </td> <td> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFMm61_VsPsrfJiowqo-RHiM1&amp;t=633068737011406250 "   alt= " "   /> </td> <td   style= "white-space:nowrap; "> <input   type= "checkbox "   name= "TreeView1n32CheckBox "   id= "TreeView1n32CheckBox "   checked= "checked "   title= "徐州淮西店 "   /> <span   class= "TreeView1_0 "   id= "TreeView1t32 "> 徐州淮西店 </span> </td>
</tr>
</table> <table   cellpadding= "0 "   cellspacing= "0 "   style= "border-width:0; ">
<tr>
<td> <div   style= "width:20px;height:1px "> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFOzOfgqIxtJDD6seXXB6xXU1&amp;t=633068737011406250 "   alt= " "   /> </div> </td> <td> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFMm61_VsPsrfJiowqo-RHiM1&amp;t=633068737011406250 "   alt= " "   /> </td> <td   style= "white-space:nowrap; "> <input   type= "checkbox "   name= "TreeView1n33CheckBox "   id= "TreeView1n33CheckBox "   checked= "checked "   title= "南京朗驰店 "   /> <span   class= "TreeView1_0 "   id= "TreeView1t33 "> 南京朗驰店 </span> </td>
</tr>
</table> <table   cellpadding= "0 "   cellspacing= "0 "   style= "border-width:0; ">
<tr>
<td> <div   style= "width:20px;height:1px "> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFOzOfgqIxtJDD6seXXB6xXU1&amp;t=633068737011406250 "   alt= " "   /> </div> </td> <td> <img   src= "/newage05/WebResource.axd?d=kP39DaBkcX3nDc8TPTZmFMTnse7VmyHjJqyaRCXk-cw1&amp;t=633068737011406250 "   alt= " "   /> </td> <td   style= "white-space:nowrap; "> <input   type= "checkbox "   name= "TreeView1n34CheckBox "   id= "TreeView1n34CheckBox "   checked= "checked "   title= "连云港中德店 "   /> <span   class= "TreeView1_0 "   id= "TreeView1t34 "> 连云港中德店 </span> </td>
</tr>
</table>
</div>

[解决办法]
http://blog.csdn.net/klfw2002/archive/2006/08/31/1152076.aspx
[解决办法]
参考: <script > 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 " onclick= "javascript:GoClick() " EnableClientScript= "true "

热点排行