JavaScript 在 getElementsByName() 上返回 Undefined


JavaScript returning Undefined on getElementsByName()

我有一个由php函数打印的复选框,我希望第一个是"全选"的逗号。所以,这是我简化的代码:

<input id='checkall' type='checkbox' onclick="checkAll();">
<?php
while (loop)
    echo "<input name='invited' type='checkbox' value='".$var."'/>";
?>
<script>
    function checkAll() {
        var aChk = aChk.getElementsByName("invited");
        for (var i=0;i<aChk.lenght;i++) {
        aChk[i].checked = document.getElementById("checkall").checked;
    }
</script> 

我把它弄得很短,但所有代码都在页面内正确组织,脚本在里面,但我不断从 aChk.getElementsByName("邀请")得到一个空返回;

我希望当有人单击"全部检查"时,将所有复选框更改为实际的"全部检查"状态。

如果我没有说清楚,或者你需要更多信息,请问。

末尾似乎缺少一个大括号。此外,"长度"应该是"长度"。我不确定这是否有帮助,但请告诉我。

function checkAll() {
    var aChk = aChk.getElementsByName("invited");
    for (var i=0;i<aChk.length;i++) {
        aChk[i].checked = document.getElementById("checkall").checked;
    }
}