一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

javascritp checkbox全选反选代码

时间:2011-05-04 编辑:简简单单 来源:一聚教程网

javascritp checkbox全选反选代码

//全选与反选


//添加
    function adddeptid(deptid)
    {
        var dept_id = deptid;
        if(dept_id==0)
        {
            alert("请选择一个部门!")
            return;
        }
        else
        {
            var re=showmdialog('emp_add.asp教程x?dept_id='+dept_id,'820','670','no');
             if(re=="ok"){
               window.location.reload();
             }
        }
    }
//修改(修改是判断checkbox只能选择一个进行修改,最后获取选中的值来作为参数跳转页面)
    function checkboxnum(emp_id){
    //checkbox选择
        var datalist  = document.getelementbyid("gridview1");
       var inputs = datalist.getelementsbytagname("input");
        var checked_counts = 0;
        var checkevalue = 0;
        for(var i=0;i         {
            if(inputs[i].checked)
            {
                checkevalue = inputs[i].value;
                checked_counts++;            }
        }
        if(checked_counts>1)
        {
            alert("只能选择一项!");
        }
        else if(checked_counts==0)
        {
            alert("请选择一项修改!");
        }
        else
        {
             var re=showmdialog('emp_add.aspx?edit_emp_id='+emp_id,'820','670','no');
            if(re=="ok"){
               window.location.reload();
           }
        }

//删除(先判断checkbox的选择个数,以数组的形式穿到另外一个页面)
    function delselectedclick(emp_id)
    {
        if(emp_id==0)
        {
           alert("请选择一个部门!")
            return;
        }
        var datalist  = document.getelementbyid("gridview1");
       var chkarray  =  datalist.getelementsbytagname("input");
       var flag = false;
        var checkvalue = "";  
        for(var i=0;i         {
            if( chkarray[i].type=="checkbox")  
           {
                if(chkarray[i].checked)
                {
                    checkvalue += chkarray[i].value+",";
                    flag = true;
               }
            }
        }
        if(flag == true)
        {
            if(confirm("确定要删除选中用户吗?"))
            {
                window.navigate("user_content.aspx?delete_emp_id="+emp_id);
                return true;
            }
           else
            {
                return false;
            }
       }
       else
        {
            alert("请先选择要删除的用户!");
            return false;
        }


    
         
    

                全选
                新增
               修改
                删除

         

核心代码

/**
 * checkbox的点击方法
 * 要求:
 * 1.全选/全不选的checkbox的name属性为 单个checkbox的name属性名+_all , 注意:最后必须为_all.
 *   例如:单个checkbox的name=or_id,则全选checkbox的name=or_id_all
 * 2.全选/全不选的checkbox必须定义id属性,并且id属性值与name属性值相同
 * 3.所有单个的checkbox在同一个form中.
 * 4.全选/全不选的checkbox可以在form中也可以在form外面.
 * 5.整个页面不允许再有和全选/全不选checkbox同name和同id的组件.
 *
 */
function _tlscheckboxselall(formobj,checkboxclicked){
 var checkname = checkboxclicked.name;//取得点击的checkbox的name属性
 var index = checkname.indexof("_all");//判断是否有_all字符串
 var isall = false;
 if(index!=-1){//如果有_all
  if(index+"_all".length==checkname.length){//满足说明_all是在最后面,表示这是个全选/全不选的checkbox.
   isall = true;
  }
 }
 var thischecked = checkboxclicked.checked;//当前checkbox的状态 true=选中 false=不选中
 if(isall){//点了全选/全不选的checkbox
  var childcheckname = checkname.substring(0,index);
  eval("var allchildcheckboxs = formobj."+childcheckname);
  var childcheckboxcount = allchildcheckboxs.length;
  if(childcheckboxcount==null){//只有1个单个的checkbox
   allchildcheckboxs.checked = thischecked;
  }else{//有2个或2个以上的单个checkbox
   for(var i=0;i     allchildcheckboxs[i].checked = thischecked;
   }
  }
 }else{//点了单个的checkbox
  var parentcheckboxname = checkname+"_all";
  if(thischecked==false){
   document.getelementbyid(parentcheckboxname).checked=false;
  }else{//判断点了当前checkbox后是否全部的单个checkbox都处于true状态
   eval("var allchildcheckboxs = formobj."+checkname);
   var childcheckboxcount = allchildcheckboxs.length;
   var isallchecked = true;
   if(childcheckboxcount==null){//只有1个单个的checkbox
    if(allchildcheckboxs.checked==false){
     isallchecked = false;
    }
   }else{//有2个或2个以上的单个checkbox
    for(var i=0;i      if(allchildcheckboxs[i].checked==false){
      isallchecked = false;
      break;
     }
    }    
   }
   if(isallchecked){//全部单个checkbox都处于true状态
    document.getelementbyid(parentcheckboxname).checked=true;
   }
  }
 }
}

 

热门栏目