使用jQuery获取在div中的选中checkbox的列表

我想获得在具有特定ID的div中选中的checkbox的名称列表。 我将如何做到这一点使用jQuery?

例如,对于这个div我想获得数组[“c_n_0”; “c_n_3”]或string“c_n_0; c_n_3”

<div id="checkboxes"> <input id="chkbx_0" type="checkbox" name="c_n_0" checked="checked" />Option 1 <input id="chkbx_1" type="checkbox" name="c_n_1" />Option 2 <input id="chkbx_2" type="checkbox" name="c_n_2" />Option 3 <input id="chkbx_3" type="checkbox" name="c_n_3" checked="checked" />Option 4 </div> 

以前两个答案的组合:

 var selected = []; $('#checkboxes input:checked').each(function() { selected.push($(this).attr('name')); }); 

这会做?

 var selected = []; $('div#checkboxes input[type=checkbox]').each(function() { if ($(this).is(":checked")) { selected.push($(this).attr('name')); } }); 
 $("#checkboxes").children("input:checked") 

会给你一个元素本身的数组。 如果你只是特别需要这个名字:

 $("#checkboxes").children("input:checked").map(function() { return this.name; }); 

我需要检查所有checkbox的计数。 而不是写一个循环,我做了这个

 $(".myCheckBoxClass:checked").length; 

将它与checkbox的总数进行比较,看它们是否相等。 希望它能帮助别人

这对我有用。

 var selecteditems = []; $("#Div").find("input:checked").each(function (i, ob) { selecteditems.push($(ob).val()); }); 

你也可以给他们所有相同的名字, 所以他们是一个数组 ,但给他们不同的价值观

 <div id="checkboxes"> <input type="checkbox" name="c_n[]" value="c_n_0" checked="checked" />Option 1 <input type="checkbox" name="c_n[]" value="c_n_1" />Option 2 <input type="checkbox" name="c_n[]" value="c_n_2" />Option 3 <input type="checkbox" name="c_n[]" value="c_n_3" checked="checked" />Option 4 </div> 

然后,您可以只使用map得到打勾的值:

 $('#checkboxes input:checked[name="c_n[]"]') .map(function () { return $(this).val(); }).get()