依据什么全选 ,关键是获取选择框,然后循环赋值<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
<title>Test.html</title> 
<script type="text/javascript"> 
function cball() { 
for(var i=1;i<=6;i++) { 
if (f1.allcheckbox.checked) 
f1.children['m'+i].checked=true; 
else 
f1.children['m'+i].checked=false; 


function odd() { 
var numOfChecked = 0; 
for (var i=1;i<=6;i++) { 
if (f1.children['m'+i].checked) 
numOfChecked++; 

if(numOfChecked==6) 
f1.allcheckbox.checked=true; 
else 
f1.allcheckbox.checked=false; 

</script> 
</head> <body> 
<form name="f1" id="f1"> 
<input name="allcheckbox" type="checkbox" title='全选/取消' onclick="cball()">全选/取消<br/> 
<input name="m1" type="checkbox" onclick='odd()'>M1<br/> 
<input name="m2" type="checkbox" onclick='odd()'>M2<br/> 
<input name="m3" type="checkbox" onclick='odd()'>M3<br/> 
<input name="m4" type="checkbox" onclick='odd()'>M4<br/> 
<input name="m5" type="checkbox" onclick='odd()'>M5<br/> 
<input name="m6" type="checkbox" onclick='odd()'>M6<br/> 
</form> 
</body> 
</html>

解决方案 »

  1.   

    <SCRIPT>
     function checkAll(){  //全选或全不选
       if(document.all.idcheckbox == null)
       return;
       var numRow = document.all.idcheckbox.length;
       if(numRow == null) {
    document.all.idcheckbox.checked = document.all.myCheckAll.checked;
       }
       if(document.all.myCheckAll.checked) {
    for (var i = 0; i < numRow; i++) {
    document.all.idcheckbox[i].checked = true;
    }
    } else {
    for (var i = 0; i < numRow; i++) {
    document.all.idcheckbox[i].checked = false;
    }
    }
      }
    </SCRIPT><input name="myCheckAll" type="checkbox"  value="checkbox" onClick=" checkAll();"></br>
    <input name="idcheckbox" id="idcheckbox" type="checkbox" >1</br>
    <input name="idcheckbox" id="idcheckbox" type="checkbox" >2</br>
    <input name="idcheckbox" id="idcheckbox" type="checkbox" >3</br>
    <input name="idcheckbox" id="idcheckbox" type="checkbox" >4</br>
    <input name="idcheckbox" id="idcheckbox" type="checkbox" >5</br>
    <input name="idcheckbox" id="idcheckbox" type="checkbox" >6</br>
    <input name="idcheckbox" id="idcheckbox" type="checkbox" >7</br>
    <input name="idcheckbox" id="idcheckbox" type="checkbox" >8</br>
    可以是n多个
      

  2.   

    <html>
    <head>
    <script language="JavaScript" type="text/JavaScript">
    // 复选框全选动作
    function  checkAll(name)
    {
        var el = document.getElementsByTagName('input');
        var len = el.length;
        for(var i=0; i<len; i++)
        {
            if((el[i].type == "checkbox") && (el[i].name != name))
            {
                if(el[i].checked == false)
                {
                    el[i].checked = true;
                }
            }
        }
    }// 复选框全取消动作
    function clearAll(name)
    {
        var el = document.getElementsByTagName('input');
        var len = el.length;
        for(var i=0; i<len; i++)
        {
            if((el[i].type=="checkbox") && (el[i].name != name))
            {
                if(el[i].checked == true)
                {
                    el[i].checked = false;
                }
            }
        }

    </script>
    </head>
    <body>
    <input type="checkbox" name="allSelect" onclick="if(this.checked == true) { checkAll(this.name); } else { clearAll(this.name); }"><br>
    <input name="checks"  type="checkbox" >1</br>
    <input name="checks"  type="checkbox" >2</br>
    <input name="checks"  type="checkbox" >3</br>
    <input name="checks"  type="checkbox" >4</br>
    <input name="checks"  type="checkbox" >5</br>
    <input name="checks"  type="checkbox" >6</br>
    <input name="checks"  type="checkbox" >7</br>
    <input name="checks"  type="checkbox" >8</br>
    </body>
    </html>
      

  3.   

    对上面代码进行了一下完善:
    <html>
    <head>
    <script language="JavaScript" type="text/JavaScript">
    // 复选框全选动作
    function  checkAll(name)
    {
        var el = document.getElementsByTagName('input');
        var len = el.length;
        for(var i=0; i<len; i++)
        {
            if((el[i].type == "checkbox") && (el[i].name != name))
            {
                if(el[i].checked == false)
                {
                    el[i].checked = true;
                }
            }
        }
    }// 复选框全取消动作
    function clearAll(name)
    {
        var el = document.getElementsByTagName('input');
        var len = el.length;
        for(var i=0; i<len; i++)
        {
            if((el[i].type=="checkbox") && (el[i].name != name))
            {
                if(el[i].checked == true)
                {
                    el[i].checked = false;
                }
            }
        }

    function ss(obj)
    {
    if(obj.checked == false)
    document.getElementById('allSelect').checked = false;
    }
    </script>
    </head>
    <body>
    <input type="checkbox" name="allSelect" id="allSelect" onclick="if(this.checked == true) { checkAll(this.name); } else { clearAll(this.name); }"><br>
    <input name="checks"  type="checkbox" onclick="ss(this);">1</br>
    <input name="checks"  type="checkbox" onclick="ss(this);">2</br>
    <input name="checks"  type="checkbox" onclick="ss(this);">3</br>
    <input name="checks"  type="checkbox" onclick="ss(this);">4</br></body>
    </html>