Wie kann ich den Wert eines Kontrollkästchens in jQuery abrufen?
534
Um den Wert des Value-Attributs zu erhalten, können Sie Folgendes tun:
$("input[type='checkbox']").val();
Oder wenn Sie ein class
oder id
dafür eingestellt haben, können Sie:
$('#check_id').val();
$('.check_class').val();
Dies wird jedoch das gleiche zurückgeben Wert zurück, unabhängig davon, ob er aktiviert ist oder nicht. Dies kann verwirrend sein, da er sich vom Verhalten des übermittelten Formulars unterscheidet.
Um zu überprüfen, ob es aktiviert ist oder nicht, gehen Sie wie folgt vor:
if ($('#check_id').is(":checked"))
{
// it is checked
}
$("input:checkbox")
. Außerdem scheint es einen Tippfehler in der Klassenauswahl zu geben ...$($0).val()
in Chrome versuche und das Kontrollkästchen deaktiviere, ist die Antwort "Ein", obwohl sie nicht aktiviert ist. Aber$($0).is(":checked")
gibt den richtigen Wert.[type="checkbox"]
bietet in modernen Browsern eine bessere Leistung als:checkbox
.$('#check_id').val();
,$('#check_id').is(":checked");
um den Wert true oder false zurückzugeben.Diese beiden Möglichkeiten funktionieren:
$('#checkbox').prop('checked')
$('#checkbox').is(':checked')
(danke @mgsloan)quelle
Probieren Sie diese kleine Lösung aus:
oder
quelle
Die einzig richtige Möglichkeit, den Wert eines Kontrollkästchens abzurufen, ist die folgende
wie in den offiziellen Dokumentationen auf der Website von jQuery erläutert. Der Rest der Methoden hat nichts mit der Eigenschaft des Kontrollkästchens zu tun. Sie überprüfen das Attribut. Dies bedeutet, dass sie den Anfangszustand des Kontrollkästchens beim Laden testen. Also kurz gesagt:
elem.checked
) oder können es verwenden,$(elem).prop("checked")
wenn Sie sich auf jQuery verlassen möchten.$(elem).is(":checked")
.Die Antworten sind irreführend. Bitte überprüfen Sie unten selbst:
http://api.jquery.com/prop/
quelle
.is(":checked")
und.prop(":checked")
arbeiten das gleiche für mich w / jQuery 1.10.0Nur um die Dinge zu klären:
Gibt "wahr" oder "falsch" zurück
quelle
quelle
quelle
Einfach, aber effektiv und setzt voraus, dass Sie wissen, dass das Kontrollkästchen gefunden wird:
Gibt
true
/false
quelle
Beispiel
Demo
quelle
Trotz der Tatsache, dass diese Frage nach einer jQuery-Lösung fragt, ist hier eine reine JavaScript-Antwort, da niemand sie erwähnt hat.
Ohne jQuery:
Wählen Sie einfach das Element aus und greifen Sie auf die
checked
Eigenschaft zu (die einen Booleschen Wert zurückgibt).Hier ist ein kurzes Beispiel für das Anhören des
change
Ereignisses:Verwenden Sie die
:checked
Pseudoklasse (input[type="checkbox"]:checked
), um markierte Elemente auszuwählen .Hier ist ein Beispiel, das über überprüfte
input
Elemente iteriert und ein zugeordnetes Array der Namen der überprüften Elemente zurückgibt.Beispiel hier
Code-Snippet anzeigen
quelle
checked
Eigenschaft für das native DOM-Element leicht zugänglich ist. Einige der Leute, die nach solchen Fragen / Antworten suchen, sind sich im Allgemeinen nicht bewusst, dass jQuery manchmal nicht notwendig ist. Mit anderen Worten, engstirnige Menschen sind nicht die Zielgruppe für diese Antwort.So erhalten Sie den Wert aller aktivierten Kontrollkästchen als Array:
quelle
um den Wert des aktivierten Kontrollkästchens zu erhalten in
jquery
:in
pure js
:quelle
Verwenden Sie den folgenden Code:
quelle
quelle
Der beste Weg ist
$('input[name="line"]:checked').val()
Außerdem können Sie ausgewählten Text erhalten
$('input[name="line"]:checked').text()
Fügen Sie Ihren Optionsfeldeingaben ein Wertattribut und einen Namen hinzu. Stellen Sie sicher, dass alle Eingaben das gleiche Namensattribut haben.
quelle
quelle
Nur Aufmerksamkeit, ab heute, 2018, da sich die API im Laufe der Jahre geändert hat. removeAttr sind beraubt und funktionieren NICHT mehr!
Jquery Aktivieren oder deaktivieren Sie ein Kontrollkästchen:
Schlecht, funktioniert nicht mehr.
Stattdessen sollten Sie Folgendes tun:
quelle