使用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()