The javascript control ASP.NET treeview control selects or cancels the of sample code

  • 2020-03-30 00:56:03
  • OfStack


<script language="javascript">   
/*   
 The name of the function :CheckNode(currentNode) , ParentNode(currentNode) , ChildNode(currentNode)   
 The functionality : Realize the belt checkbox the treeview In the    
1 , all children of selected parent nodes are also selected    
2 , after canceling the selection of all child nodes, the selection of parent node is cancelled    
 Method of use :
1 And in the <head></head> In the middle add CheckNode(currentNode) , ParentNode(currentNode) , ChildNode(currentNode)   
2 And in the *.aspx.cs the Page_load() Add in event yourTreeView.Attribute.Add("OnCheck","CheckNode(yourTreeView.getTreeNode(yourTreeView.clickedNodeIndex))")   
  */   

  //Recursively traverses all child nodes & NBSP;  
  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;   
  }   
  //Parent processing & NBSP;  
  if(currentNode.getParent()!=null)   
  {   
  //Check handle & NBSP;  
  if(currentNode.getAttribute('Checked'))   
  {   
  ParentNode(currentNode);   
  }   
  else   
  //Uncheck & NBSP;  
  {   
  ChildNode(currentNode);   
  }   
  }   
  else   
  {   
  //Doing nothing & NBSP;  
  }   
  //Child node processing & NBSP;  
  if(childNode.length>0)   
  {   
  for(var   i=0;i<childNode.length;i++)   
  {   
  childNode.setAttribute("Checked",isChecked);   
  if(childNode.getChildren().length>0)   
  {   
  CheckNode(childNode);   
  }   
  }   
  }   

  }   
  //Recursively select the parent node & NBSP;  
  function   ParentNode(currentNode)   
  {   
  if(currentNode.getParent()!=null)   
  {   
  currentNode.getParent().setAttribute('Checked',true);   
  //ParentNode(currentNode) is called recursively to iterate over the ParentNode & NBSP; further up;  
  ParentNode(currentNode.getParent());   
  }   
  }   
  //Recursively deselect the parent node & NBSP;  
  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);   
  }   
  //Recursively call ChildNode(currentNode) to iterate over the parent node & PI further up;  
  ChildNode(currentNode.getParent());   
  }   
  }   

</script>

Js recursively traverses the problem of all children of a node in the 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());           
        }   
      }   
    }  


Related articles: