多维数组的复选框?

时间:2012-11-24 12:36:05

标签: javascript html forms

  

可能重复:
  fetching checkbox multidimensional array in javascript

是否可以实现复选框的多维数组?

例如

     <input type='checkbox' name='question[0][]' value='0'>
     <input type='checkbox' name='question[0][]' value='1'>
     <input type='checkbox' name='question[0][]' value='2'>

     <input type='checkbox' name='question[1][]' value='0'>
     <input type='checkbox' name='question[1][]' value='1'>
     <input type='checkbox' name='question[1][]' value='2'>

     <input type='checkbox' name='question[2][]' value='0'>
     <input type='checkbox' name='question[2][]' value='1'>
     <input type='checkbox' name='question[2][]' value='2'>

如果可以的话,您如何在javascript中查看是否选中了复选框?

1 个答案:

答案 0 :(得分:4)

可以选择一个特定的复选框。

您可以选择名称属性question[x][],然后循环浏览这些属性以获取每个选中的值。

使用jQuery的一个例子:

var checkedBoxes = {0: [], 1: [], 2: []};
$("input[name='question[0][]']").each(function(){
    checkedBoxes[0].push(this.checked);
});
//then do the same for 1 and 2

//after everything:
console.log(checkedBoxes); //a multidimesional array of checked boxes

或者使其成为发烧友

var checkedBoxes = {0: [], 1: [], 2: []};
for(index in checkedBoxes) {
    $("input[name='question[" + index + "][]']").each(function(){
        checkedBoxes[index].push(this.checked);
    });
}
//after everything:
console.log(checkedBoxes); //a multidimesional array of checked boxes

小提琴:http://jsfiddle.net/maniator/XA8XV/