为什么Javascript没有';不要勾选所有复选框?

为什么Javascript没有';不要勾选所有复选框?,javascript,jquery,Javascript,Jquery,我写了一个脚本,当我点击第一个复选框时,它会检查所有复选框。当我在HTML中使用onClick事件时,它工作得很好,但是当我尝试不使用onClick事件时,它不工作 以下是HTML代码: <table> <tr> <td><input id="check-all" type="checkbox"/> </tr> <tr> <td><input id="check1" type="che

我写了一个脚本,当我点击第一个复选框时,它会检查所有复选框。当我在HTML中使用onClick事件时,它工作得很好,但是当我尝试不使用onClick事件时,它不工作

以下是HTML代码:

<table>

<tr>
    <td><input id="check-all" type="checkbox"/>
</tr>

<tr>
    <td><input id="check1"  type="checkbox" name="check"/>
</tr>

<tr>
    <td ><input id="check2"  type="checkbox" name="check"/>
</tr>

<tr>
    <td><input id="check3"  type="checkbox" name="check"/>
</tr>

这是我尝试运行的Javascript代码,但不起作用

var checkbox = document.getElementById("check-all");

checkbox.onclick = function () {
  checkboxes = document.getElementsByName('check');
  for(var i=0, n=checkboxes.length;i<n;i++) {
    checkboxes[i].checked = source.checked;
  }
}
var checkbox=document.getElementById(“全选”);
checkbox.onclick=函数(){
checkbox=document.getElementsByName('check');

对于(var i=0,n=checkbox.length;i我认为您有一个未定义的变量:

var checkbox = document.getElementById("check-all");

checkbox.onclick = function () {
  checkboxes = document.getElementsByName('check');
  for(var i=0, n=checkboxes.length;i<n;i++) {
    checkboxes[i].checked = this.checked;
  }
}
var checkbox=document.getElementById(“全选”);
checkbox.onclick=函数(){
checkbox=document.getElementsByName('check');

for(var i=0,n=checkbox.length;i您的source.checked无效且使用错误

this.checked
而不是

source.checked

什么是source.checked?我想应该是checkbox.checkedAh,谢谢。是的,这是我的fult。我甚至都不认识那个“source”。谢谢你的帮助,伙计。:)不用担心。如果你高兴的话,勾选这个作为答案-会标记它,以便人们可以看到主列表上收到的答案。