TreeView 无刷新展开与收缩

1.当然有一个TreeView咯,这里ID名为 treeViewType

< asp:TreeView ID = " treeViewType "  runat = " server "  ExpandDepth = " 1 " ></ asp:TreeView >

 

2.然后需要两个按钮,其中 TreeviewExpandCollapseAll 为JS方法,后面介绍

< input type = " button "  value = " 展开 "   class = " but1 "  onclick = " TreeviewExpandCollapseAll('<%=treeViewType.ClientID%>', true) "   />
< input type = " button "  value = " 收缩 "   class = " but1 "  onclick = " TreeviewExpandCollapseAll('<%=treeViewType.ClientID%>', false) "   />

 

3.最关键的JS方法来了,嘿嘿

/*
* 树展开收缩方法 2010-03-23 PM By WQY
* treeViewId: 树对象
* expandAll: 展开或收缩
*/
function TreeviewExpandCollapseAll(treeViewId, expandAll) {
    var displayState 
=  (expandAll  ==   true   ?   " none "  :  " block " );
    var treeView 
=  document.getElementById(treeViewId);
    
if  (treeView) {
        var treeLinks 
=  treeView.getElementsByTagName( " a " );
        var nodeCount 
=  treeLinks.length;

        
for  (i  =   0 ; i  <  nodeCount; i ++ ) {
            
if  (treeLinks[i].firstChild.tagName) {
                
if  (treeLinks[i].firstChild.tagName.toLowerCase()  ==   " img " ) {
                    var currentToggleLink 
=  treeLinks[i];
                    var childContainer 
=  GetParentByTagName( " table " , currentToggleLink).nextSibling;
                    
if  (childContainer.style.display  ==  displayState) {
                        eval(currentToggleLink.href);
                    }
                }
            }
        }
    }
}

function GetParentByTagName(parentTagName, childElementObj) {
    var parent 
=  childElementObj.parentNode;
    
while  (parent.tagName.toLowerCase()  !=  parentTagName.toLowerCase()) {
        parent 
=  parent.parentNode;
    }
    
return  parent;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值