Javascript 复选框数组值
未存储复选框的值。当我在所选+=元素[i]的位置发出警报时。值+“\n”;我得到了价值观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){
<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。不知道是否会有错误消息像“超出范围”或类似的东西更有意义。