JS控制項ASP.NET的treeview控制項全選或者取消

來源:互聯網
上載者:User

 本篇文章主要是對JS控制項ASP.NET的treeview控制項全選或者取消的範例程式碼進行了介紹,需要的朋友可以過來參考下,希望對大家有所協助

代碼如下:<script language="javascript">   /*   函數名稱:CheckNode(currentNode)、ParentNode(currentNode)、ChildNode(currentNode)    函數功能:實現帶checkbox的treeview中   1、選中父結點其子結點也全部選中   2、取消全部子結點的選擇後,父結點的選擇也隨之取消    使用方法:1、在<head></head>中間添加CheckNode(currentNode)、ParentNode(currentNode)、ChildNode(currentNode)    2、在*.aspx.cs的Page_load()事件中添加yourTreeView.Attribute.Add("OnCheck","CheckNode(yourTreeView.getTreeNode(yourTreeView.clickedNodeIndex))")     */      //遞迴遍曆所有子節點     function   CheckNode(currentNode)     {     var   childNode=new   Array();     var   parentNodeChild=new   Array();     var   isChecked;     childNode=currentNode.getChildren();     if(currentNode.getAttribute('checked'))     {     isChecked=true;     }     else     {     isChecked=false;     }     //父節點處理     if(currentNode.getParent()!=null)     {     //選中處理     if(currentNode.getAttribute('Checked'))     {     ParentNode(currentNode);     }     else     //取消選中     {     ChildNode(currentNode);     }     }     else     {     //什麼也不做     }     //子節點處理     if(childNode.length>0)     {     for(var   i=0;i<childNode.length;i++)     {     childNode.setAttribute("Checked",isChecked);     if(childNode.getChildren().length>0)     {     CheckNode(childNode);     }     }     }      }     //遞迴選中父節點     function   ParentNode(currentNode)     {     if(currentNode.getParent()!=null)     {     currentNode.getParent().setAttribute('Checked',true);     //遞迴調用ParentNode(currentNode)以遍曆更上一層的父節點     ParentNode(currentNode.getParent());     }     }     //遞迴取消選中父節點     function   ChildNode(currentNode)     {     if(currentNode.getParent()!=null)     {     var   checkedCount=0;     var   childNode=currentNode.getParent().getChildren();     for   (var   i=0;i<childNode.length;i++)     {     if(childNode.getAttribute('Checked'))     {     checkedCount++;     }     }     if(checkedCount==0)     {     currentNode.getParent().setAttribute('Checked',false);     }     //遞迴調用ChildNode(currentNode)以遍曆更上一層的父節點     ChildNode(currentNode.getParent());     }     }    </script>  js遞迴遍曆treeview中某節點的所有子節點的問題複製代碼 代碼如下: var   AllRootNode=new   Array();       AllRootNode=TreeView1.getChildren();       AlertNode(AllRootNode);              function   AlertNode(NodeArray)       {         if(parseInt(NodeArray.length)==0)           return;         else         {           for(i=0;i<NodeArray.length;i++)           {             var   cNode;             cNode=NodeArray;             alert(cNode.getAttribute("Text"));             if(parseInt(cNode.getChildren().length)!=0)               AlertNode(cNode.getChildren());                   }         }       }   

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.