4580 Stimmen

Einstellung "checked" für ein Kontrollkästchen mit jQuery

Ich würde gerne so etwas tun, um ein Häkchen bei checkbox mit jQuery :

$(".myCheckBox").checked(true);

o

$(".myCheckBox").selected(true);

Gibt es so etwas?

0 Stimmen

Eine spezifischere (und sehr nützliche!) Frage, "Wie überprüfe ich ein Element in einem Kontrollkästchen, das nach Wert gesetzt ist?", können wir auch hier diskutieren, und ich habe eine Antwort unten gepostet.

0 Stimmen

Weitere Möglichkeiten, dies mit jQuery zu tun, finden Sie hier stackoverflow.com/a/22019103/1868660

0 Stimmen

Wenn Sie das onchange-Ereignis auslösen müssen, ist es $("#mycheckbox").click();

19voto

Matt Peacock Punkte 199

Wenn Sie mobil arbeiten und möchten, dass die Schnittstelle aktualisiert wird und das Kontrollkästchen als nicht markiert angezeigt wird, gehen Sie wie folgt vor:

$("#checkbox1").prop('checked', false).checkboxradio("refresh");

18voto

naor Punkte 3080

Achten Sie auf Speicherlecks im Internet Explorer, bevor Sie Internet Explorer 9 als die In der jQuery-Dokumentation heißt es :

Im Internet Explorer vor Version 9 konnte die Verwendung von .prop() zum Setzen einer DOM Element-Eigenschaft auf etwas anderes als einen einfachen primitiven Wert (Zahl, String oder Boolean) kann zu Speicherlecks führen, wenn die Eigenschaft nicht entfernt wird (mit .removeProp()), bevor das DOM-Element aus dem Dokument entfernt wird aus dem Dokument entfernt wird. Um sicher Werte auf DOM-Objekte ohne Speicherlecks zu setzen Lecks zu setzen, verwenden Sie .data().

2 Stimmen

Dies ist irrelevant, da alle (richtigen) Antworten .prop('checked',true) .

0 Stimmen

Ich bin mir nicht sicher, ob ich Ihren Kommentar verstanden habe, der immer noch in der jQuery-Dokumentation steht. Wollen Sie andeuten, dass es kein Speicherleck im IE < 9 gibt?

2 Stimmen

In diesem Fall gibt es kein Speicherleck, da wir sind Einstellung auf einen einfachen primitiven Wert (Boolesch).

18voto

jj2422 Punkte 372

Zum Ankreuzen und Abwählen

$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);

3 Stimmen

-1; dies fügt einem ohnehin schon aufgeblähten Thread überhaupt keinen Wert hinzu. Der Code hier ist genau derselbe wie in der akzeptierten Antwort.

17voto

mahmoh Punkte 782
$('controlCheckBox').click(function(){
    var temp = $(this).prop('checked');
    $('controlledCheckBoxes').prop('checked', temp);
});

4 Stimmen

-1 dafür, dass es sich um eine reine Code-Antwort handelt, die die Frage nicht direkt beantwortet und nichts hinzufügt, was andere Antworten nicht schon abgedeckt haben.

16voto

Friedrich Punkte 1763

Dies ist wahrscheinlich die kürzeste und einfachste Lösung:

$(".myCheckBox")[0].checked = true;

o

$(".myCheckBox")[0].checked = false;

Noch kürzer wäre es:

$(".myCheckBox")[0].checked = !0;
$(".myCheckBox")[0].checked = !1;

Hier ist a jsFiddle auch.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X