js 实现repeater 中记录的全选,反选

来源:互联网 发布:评论点赞软件 编辑:程序博客网 时间:2024/06/09 14:24

/*
 * start 全选,反选js
 */

//parentChk:实现全选的checkboxID,一般为this
//ChildId:所要选择的CheckboxID.
//bigControlID:所包含checkbox的外容器ID,如repeater1
//selall:是否为全选,yes是,no否
//selall:是否为反选,当为relsel时,反选
 function SelectAll(parentChk,ChildId,bigControlID,selall)  
    {  
        var oElements = document.getElementsByTagName("INPUT"); 
        var bIsChecked=parentChk.checked;   
              

       for(i=0; i<oElements.length;i++)  
        {  
            if( IsCheckBox(oElements[i]) &&   
                IsMatch(oElements[i].id, ChildId, bigControlID))  
             {
              
                if (selall=="relsel")
                {
                    if (oElements[i].checked)
                    {
                        oElements[i].checked=false;
                    }
                    else
                    {
                    oElements[i].checked=true;
                    }
                }
                else
                {
                    oElements[i].checked = bIsChecked;
                }              
                                  
            }          
        }     
     }  
     
    function IsMatch(id, ChildId, controlID)  
    {  
        var sPattern ='^'+controlID+'_+.*'+ChildId+'$';
        var oRegExp = new RegExp(sPattern);  
        if(oRegExp.exec(id))   
            return true;  
        else   
            return false;  
    }  
     
    function IsCheckBox(chk)  
   {  
        if(chk.type == 'checkbox') return true;  
        else return false;  
    } 
  /*
   * end 全选,反选js
   */ 

原创粉丝点击