Получить список отмеченных флажков в div с помощью jQuery
Я хочу получить список чекбоксов, которые выбраны в DIV с определенным идентификатором. Как бы я сделал это с помощью jQuery?
например, для этого div я хочу получить массив ["c_n_0";" c_n_3"] или строку"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>
6 ответов:
комбинация двух предыдущих ответов:
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; });
Мне нужно количество всех флажков, которые проверяются. Вместо того, чтобы писать цикл, я сделал это
$(".myCheckBoxClass:checked").length;
сравните его с общим количеством флажков, чтобы увидеть, если они равны. Надеюсь, это поможет кому-то
это работает для меня.
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>
затем вы можете получить только значение только отмеченныхиспользуя карту:
$('#checkboxes input:checked[name="c_n[]"]') .map(function () { return $(this).val(); }).get()