zoukankan      html  css  js  c++  java
  • [原创]如何控制TreeView在打开的时候只展开两层?

    树的Html代码如下:

     1<iewc:TreeView id="TreeView1" style="Z-INDEX: 101; LEFT: 320px; POSITION: absolute; TOP: 160px"
     2                runat="server">
     3                <iewc:TreeNode Text="Node0">
     4                    <iewc:TreeNode Text="Node3">
     5                        <iewc:TreeNode Text="Node9">
     6                            <iewc:TreeNode Text="Node0"></iewc:TreeNode>
     7                            <iewc:TreeNode Text="Node1"></iewc:TreeNode>
     8                        </iewc:TreeNode>
     9                        <iewc:TreeNode Text="Node10">
    10                            <iewc:TreeNode Text="Node2"></iewc:TreeNode>
    11                            <iewc:TreeNode Text="Node3"></iewc:TreeNode>
    12                        </iewc:TreeNode>
    13                    </iewc:TreeNode>
    14                    <iewc:TreeNode Text="Node4"></iewc:TreeNode>
    15                </iewc:TreeNode>
    16                <iewc:TreeNode Text="Node1">
    17                    <iewc:TreeNode Text="Node5">
    18                        <iewc:TreeNode Text="Node11">
    19                            <iewc:TreeNode Text="Node4"></iewc:TreeNode>
    20                            <iewc:TreeNode Text="Node5"></iewc:TreeNode>
    21                        </iewc:TreeNode>
    22                        <iewc:TreeNode Text="Node12"></iewc:TreeNode>
    23                    </iewc:TreeNode>
    24                    <iewc:TreeNode Text="Node6"></iewc:TreeNode>
    25                </iewc:TreeNode>
    26                <iewc:TreeNode Text="Node2">
    27                    <iewc:TreeNode Text="Node7">
    28                        <iewc:TreeNode Text="Node13">
    29                            <iewc:TreeNode Text="Node6"></iewc:TreeNode>
    30                            <iewc:TreeNode Text="Node7"></iewc:TreeNode>
    31                        </iewc:TreeNode>
    32                        <iewc:TreeNode Text="Node14"></iewc:TreeNode>
    33                    </iewc:TreeNode>
    34                    <iewc:TreeNode Text="Node8"></iewc:TreeNode>
    35                </iewc:TreeNode>
    36            </iewc:TreeView>

    别忘了在窗体的onload事件中调用ExpandOneTwo()函数

    <body MS_POSITIONING="GridLayout" onload="ExpandOneTwo();">


    第1种非递归的方法:

     1 function ExpandOneTwo()
     2         {
     3        
     4            var NodeArray=new Array();
     5            NodeArray=TreeView1.getChildren();
     6            for(i=0;i<NodeArray.length;i++)
     7            {
     8                cNode=NodeArray[i];
     9                cNode.setAttribute("expanded","true");
    10                //alert(cNode.getAttribute("Text"));
    11                var cNodeArray=new Array();
    12                cNodeArray=cNode.getChildren();
    13                for(j=0;j<cNodeArray.length;j++)
    14                {
    15                 var ccNode=cNodeArray[j];
    16                  ccNode.setAttribute("expanded","true");
    17                }
    18            }
    19         }
    20

    第2种递归的方法:
     1<script language="javascript">
     2        
     3         function ExpandOneTwo()
     4         {
     5         //alert(arguments[0]);
     6            
     7            var c=arguments[0];
     8            var NodeArray=new Array();
     9            if (c==null)
    10            {
    11                NodeArray=TreeView1.getChildren();
    12                
    13                if (NodeArray!=null)    
    14                for(var i=0;i<NodeArray.length;i++)
    15                {    
    16                    cNode=NodeArray[i];
    17                    cNode.setAttribute("expanded","true");
    18                    if ((cNode.getParent()!=null&& (cNode.getParent().getParent()==null))
    19                    return;
    20                    ExpandOneTwo(cNode);      
    21                }
    22            }
    23            else
    24            {
    25               
    26                NodeArray=c.getChildren();
    27                if (NodeArray!=null)    
    28                for(var i=0;i<NodeArray.length;i++)
    29                {    
    30                    cNode=NodeArray[i];
    31                    cNode.setAttribute("expanded","true");
    32                    if ((cNode.getParent()!=null&& (cNode.getParent().getParent()==null))
    33                    return;
    34                    ExpandOneTwo(cNode);      
    35                }
    36            }
    37            
    38            
    39         }
    40        </script>

  • 相关阅读:
    登录界面
    动手动脑
    关于二进制
    Java考试
    D
    威尔逊定理 k!%p
    11.46.2020质检
    最长上升序列输出方案
    问题 G: 汽车的最终位置
    奶牛大会(二分)
  • 原文地址:https://www.cnblogs.com/goody9807/p/169447.html
Copyright © 2011-2022 走看看