treeview checkbox的一些操作

 
  < div >
    
< script  language ="javascript"  type ="text/javascript" >
function OnTreeNodeChecked() 
{
    
var ele = window.event.srcElement; 
    
if(ele.type=='checkbox'
    

        
var childrenDivID = ele.id.replace('CheckBox','Nodes'); 
        
var div = document.getElementById(childrenDivID); 
        
if(div==null)return
        
var checkBoxs = div.getElementsByTagName('INPUT'); 
        
for(var i=0;i<checkBoxs.length;i++
        

            
if(checkBoxs[i].type=='checkbox'
                checkBoxs[i].checked
=ele.checked; 
        }
 
    }
 
}

function getParentByTagName(element,tagName)
        
{
            
var    parent = element.parentNode;
            
            
var    upperTagName = tagName.toUpperCase();
            
while (parent && (parent.tagName.toUpperCase() != upperTagName))
            
{
                parent 
= parent.parentNode ? parent.parentNode : parent.parentElement;
            }

            
return parent;
        }


        
function setParentChecked(objNode)
        
{
            
var    objParentDiv = getParentByTagName(objNode,"div");
            
if(objParentDiv == null || objParentDiv == "undefined")
                
return;
            
var    objID =    objParentDiv.getAttribute("ID");
            
var    objParentCheckBox =    document.getElementById(objID.replace("Nodes","CheckBox"));
            
if(objParentCheckBox == null || objParentCheckBox    == "undefined")
                
return;
            
if(objParentCheckBox.tagName!="INPUT" && objParentCheckBox.type    == "checkbox")
                
return;
            objParentCheckBox.checked 
=    true;
            setParentChecked(objParentCheckBox);
        }



        
function setChildCheckedState(div,state)
        
{
            
var    objchild = div.childNodes;
            
var    count =    objchild.length;
            
for(var    i=0;i<objchild.length;i++)
            
{
                
var    tempObj    = objchild[i];
                
if(tempObj.tagName=="INPUT"    && tempObj.type    == "checkbox")
                
{
                    tempObj.checked    
= state;
                }

                setChildCheckedState(tempObj,state);
            }

        }

        
function TreeNodeChecked()
        
{
            
var    objNode    = window.event.srcElement;
            
if(objNode.tagName!="INPUT"    || objNode.type!="checkbox")
                
return;
            
            
if(objNode.checked == true)
            
{
//                alert('setParentChecked');
                setParentChecked(objNode);
            }

            
var    objID =    objNode.getAttribute("ID");           
            
var    objParentDiv = document.getElementById(objID.replace("CheckBox","Nodes"));            
            
if(objParentDiv==null || typeof(objParentDiv) == "undefined")
                
return;
            setChildCheckedState(objParentDiv,objNode.checked);

        }

</ script >
< asp:TreeView  ID ="TreeView1"  runat ="server"  ShowCheckBoxes ="All" >         
</ asp:TreeView ></ div >

 

在后台添加代码

TreeView1.Attributes.Add("onclick", "TreeNodeChecked();");

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值