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();

45voto

Ramon de Jesus Punkte 749

So aktivieren Sie ein Kontrollkästchen mit jQuery 1.6 oder höher einfach dies tun:

checkbox.prop('checked', true);

Um die Markierung zu entfernen, verwenden Sie:

checkbox.prop('checked', false);

Hier ist, was ich gerne verwenden, um ein Kontrollkästchen mit jQuery umzuschalten:

checkbox.prop('checked', !checkbox.prop('checked'));

Wenn Sie Folgendes verwenden jQuery 1.5 oder niedriger:

checkbox.attr('checked', true);

Um die Markierung zu entfernen, verwenden Sie:

checkbox.attr('checked', false);

40voto

Xitalogy Punkte 1512

Hier ist eine Möglichkeit, dies ohne jQuery zu tun

function addOrAttachListener(el, type, listener, useCapture) {
  if (el.addEventListener) {
    el.addEventListener(type, listener, useCapture);
  } else if (el.attachEvent) {
    el.attachEvent("on" + type, listener);
  }
};

addOrAttachListener(window, "load", function() {
  var cbElem = document.getElementById("cb");
  var rcbElem = document.getElementById("rcb");
  addOrAttachListener(cbElem, "click", function() {
    rcbElem.checked = cbElem.checked;
  }, false);
}, false);

<label>Click Me!
  <input id="cb" type="checkbox" />
</label>
<label>Reflection:
  <input id="rcb" type="checkbox" />
</label>

34voto

starjahid Punkte 337

Hier ist der Code für "checked" und "unchecked" mit einer Schaltfläche:

var set=1;
var unset=0;
jQuery( function() {
    $( '.checkAll' ).live('click', function() {
        $( '.cb-element' ).each(function () {
            if(set==1){ $( '.cb-element' ).attr('checked', true) unset=0; }
            if(set==0){ $( '.cb-element' ).attr('checked', false); unset=1; }
        });
        set=unset;
    });
});

Update: Hier ist derselbe Codeblock unter Verwendung der neueren Jquery 1.6+ prop-Methode, die attr ersetzt:

var set=1;
var unset=0;
jQuery( function() {
    $( '.checkAll' ).live('click', function() {
        $( '.cb-element' ).each(function () {
            if(set==1){ $( '.cb-element' ).prop('checked', true) unset=0; }
            if(set==0){ $( '.cb-element' ).prop('checked', false); unset=1; }
        });
        set=unset;
    });
});

4 Stimmen

Diese Antwort ist veraltet, denn sie verwendet .attr anstelle von .prop .

33voto

prashanth Punkte 319

Versuchen Sie dies:

$('#checkboxid').get(0).checked = true;  //For checking

$('#checkboxid').get(0).checked = false; //For unchecking

31voto

Prasanth P Punkte 705

Wir können verwenden elementObject mit jQuery, um das Attribut zu überprüfen:

$(objectElement).attr('checked');

Wir können dies für alle jQuery-Versionen verwenden, ohne dass ein Fehler auftritt.

Update: Jquery 1.6+ hat die neue prop Methode, die attr ersetzt, z.B.:

$(objectElement).prop('checked');

2 Stimmen

Diese Antwort ist veraltet, denn sie verwendet .attr anstelle von .prop .

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