wake-up-neo.net

Mit jQuery eine Liste der aktivierten Kontrollkästchen in einem Div abrufen

Ich möchte eine Liste der Namen von Kontrollkästchen erhalten, die in einem Div mit einer bestimmten ID ausgewählt sind. Wie würde ich das mit jQuery machen?

Zum Beispiel möchte ich für dieses div Array ["c_n_0"; "c_n_3"] oder eine Zeichenfolge "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>
214

Kombination von zwei vorherigen Antworten:

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

Würde das gehen?

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

gibt Ihnen eine Reihe der Elemente selbst. Wenn Sie nur die Namen benötigen:

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

Ich brauchte die Anzahl aller Kontrollkästchen, die markiert sind. Anstatt eine Schleife zu schreiben, habe ich das gemacht

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

Vergleichen Sie es mit der Gesamtzahl der Kontrollkästchen, um festzustellen, ob sie gleich sind. Hoffe, es wird jemandem helfen

21
Usman Shaukat

Das funktioniert bei mir.

var selecteditems = [];

$("#Div").find("input:checked").each(function (i, ob) { 
    selecteditems.Push($(ob).val());
});
7
Ricardo

Sie können ihnen auch den gleichen Namen geben also sind sie ein Array , aber sie können unterschiedliche Werte:

<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>

Sie können dann nur den Wert der angekreuzten Werte abrufen mithilfe der Karte :

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