如何通过一次单击检查HTML页面上的所有复选框(复选框数组)

Adn*_*nan 2 html javascript

我有以下HTML:

<form name="smform" id="smform" method="post" action="">
      <input type="checkbox" name="Check_All" onClick="Check(document.smform.check)"  >

     <input type="checkbox" name="check" value="blue_color"> Blue<br>
     <input type="checkbox" name="check" value="green_color"> Green<br>
     <input type="checkbox" name="check" value="orange_color"> Orange<br>
</form>
Run Code Online (Sandbox Code Playgroud)

有了这个JS:

function Check(chk)
    {
        if(document.smform.Check_All.checked){
        for (i = 0; i < chk.length; i++)
        chk[i].checked = true ;
        document.smform.Check_All.checked = true;
    }else{

        for (i = 0; i < chk.length; i++)
        chk[i].checked = false ;
        document.smform.Check_All.checked = false;
    }
}
Run Code Online (Sandbox Code Playgroud)

这个工作正常,我可以选择或取消选中所有复选框,但为了将其作为ARRAY发布,我的复选框将具有以下内容name="check[]":

     <input type="checkbox" name="check[]" value="blue_color"> Blue<br>
     <input type="checkbox" name="check[]" value="green_color"> Green<br>
     <input type="checkbox" name="check[]" value="orange_color"> Orange<br>
Run Code Online (Sandbox Code Playgroud)

但在这种情况下,我的JS无法正常工作.我该如何调整这个JS以便它可以使用name="check[]"

所有帮助表示赞赏.

Jam*_*iec 5

只是不要使用点符号,而是使用方括号和字符串:

onClick="Check(document.smform['check[]'])"
Run Code Online (Sandbox Code Playgroud)

实例:http://jsfiddle.net/5JCMS/