私は特定のIDを持つdivで選択されているチェックボックスの名前のリストを取得したいです。どのように私はjQueryを使ってそれをするのでしょうか?
たとえば、このdivに対して、array ["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>
2つの前の答えの組み合わせ:
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());
});
また、すべて同じ名前を指定することもできます つまり配列になります 、ただし異なるvalues:
<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()