SOURCE

console 命令行工具 X clear

                    
>
console
var oAll = document.getElementsByName('all')[0]
var oHobby = document.getElementsByName('hobby[]')


oAll.onchange = function(){
  setAllChecked(oHobby,this.checked)
}

function setAllChecked(items,checked){
  for(var i = 0; i < items.length; i++){
    items[i].checked = checked
  }
}

for(var i = 0; i < oHobby.length; i++){
  oHobby[i].onchange = function(){
   checkAll()
  }
}

function checkAll(){
  for(var i = 0; i< oHobby.length; i++){
    if(!oHobby[i].checked){
      return oAll.checked = false
    }
  }
  
  oAll.checked = true
}

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <title>checkbox全选</title>
</head>
<body>
  <div class="wrapper">
    <div>请选择爱好:</div>
    <input type="checkbox" value="读书" name="hobby[]" checked />读书
    <input type="checkbox" value="健身" name="hobby[]" />健身
    <input type="checkbox" value="上网" name="hobby[]" />上网
    &nbsp; &nbsp; &nbsp;<input type="checkbox" name="all" checked  />全选
  </div>
</body>
</html>