Javascript 复选框数组值

Javascript 复选框数组值,javascript,Javascript,未存储复选框的值。当我在所选+=元素[i]的位置发出警报时。值+“\n”;我得到了价值观 <script> function whichIsChecked(){ var selected = ""; var elements = document.getElementsByName("colors[]"); for(var i=0; i<=elements.length; i++){ if(elements[i].checked){

未存储复选框的值。当我在所选+=元素[i]的位置发出警报时。值+“\n”;我得到了价值观

<script>

function whichIsChecked(){
   var selected = "";
   var elements = document.getElementsByName("colors[]");
   for(var i=0; i<=elements.length; i++){
       if(elements[i].checked){
          //alert(elements[i].value) // values are displayed
      selected += elements[i].value + "\n";
   }
   }    
  alert(selected); // not storing
}
</script>


<form method="post" action="">
  <input type="checkbox" name="colors[]" value="red">
  <input type="checkbox" name="colors[]" value="blue">
  <input type="checkbox" name="colors[]" value="green">

  <input type="button" name="submit" value="Submit" onclick="whichIsChecked()">
</form>

函数whichschecked(){
var selected=“”;
var elements=document.getElementsByName(“colors[]);

for(var i=0;i您的
for
循环走得太远,导致类型错误,因为元素[3]不存在。更改
+1。@karthik_西班牙调试的第一步始终是检查代码给出的错误–在本例中,在Chrome或Firefox中打开开发者工具,您将看到此错误。@CharlieS我已经在Firefox中使用webdeveloper工具,它给了我TypeError。不知道是否会有错误消息像“超出范围”或类似的东西更有意义。