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?
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?
$("#mycheckbox")[0].checked = true;
$("#mycheckbox").attr('checked', true);
$("#mycheckbox").click();
Bei der letzten wird das Klick-Ereignis für das Kontrollkästchen ausgelöst, bei den anderen nicht. Wenn Sie also benutzerdefinierten Code im onclick-Ereignis für das Kontrollkästchen haben, den Sie auslösen möchten, verwenden Sie den letzten.
Um ein Kontrollkästchen zu aktivieren, sollten Sie
$('.myCheckbox').attr('checked',true);
o
$('.myCheckbox').attr('checked','checked');
und um ein Kontrollkästchen zu deaktivieren, sollten Sie es immer auf false setzen:
$('.myCheckbox').attr('checked',false);
Wenn Sie das tun
$('.myCheckbox').removeAttr('checked')
wird das Attribut vollständig entfernt, so dass Sie das Formular nicht zurücksetzen können.
BAD DEMO jQuery 1.6 . Ich glaube, das ist kaputt. Für 1.6 werde ich einen neuen Beitrag dazu machen.
NEW WORKING DEMO jQuery 1.5.2 funktioniert in Chrome.
Beide Demos verwenden
$('#tc').click(function() {
if ( $('#myCheckbox').attr('checked')) {
$('#myCheckbox').attr('checked', false);
} else {
$('#myCheckbox').attr('checked', 'checked');
}
});
Dies ist ungenau. Wenn das Attribut "checked" auf '' gesetzt wird, wird no deaktivieren Sie zumindest in Chrome die Kontrollkästchen.
@xixonia Ich habe getestet, bevor ich Ihre Fiddle gepostet funktioniert nicht, weil Sie nicht ändern, das Menü auf der linken Seite zu jquery enthalten
@xixonia wieder danke, es scheint, dass dies nicht die gleiche Art und Weise in jauery 1.6 siehe Hinweis oben danke für das Hinzufügen Ihrer Lösung als gut funktionieren
Angenommen, die Frage lautet...
Denken Sie daran, dass in einem typischen Checkbox-Set alle Eingabe-Tags denselben Namen haben, sie unterscheiden sich durch das Attribut value
: Es gibt keine ID für jeden Eingang der Menge.
Die Antwort von Xian lässt sich erweitern durch eine spezifischerer Selektor unter Verwendung der folgenden Codezeile:
$("input.myclass[name='myname'][value='the_value']").prop("checked", true);
Das beantwortet die Frage nicht (die Frage bezieht sich auf Einstellung ob ein Kontrollkästchen angekreuzt ist, nicht die Feststellung, ob ein Kontrollkästchen angekreuzt ist). Es ist auch ein ziemlich hässlicher Weg, um festzustellen, ob das Kontrollkästchen aktiviert ist (zum einen nutzen Sie die nicht selbstverständliche Tatsache aus, dass .val()
wird immer zurückkehren undefined
wenn es bei 0 Elementen aufgerufen wird, um zu erkennen, dass ein jQuery-Objekt leer ist, während man einfach seine .length
stattdessen) - siehe stackoverflow.com/questions/901712/ für besser lesbare Ansätze.
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.
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();
0 Stimmen
"Etwas ankreuzen" suggeriert, dass es getestet wird, daher halte ich "Ein Kontrollkästchen ankreuzen" für einen klareren und besseren Titel.
0 Stimmen
Prop(); Funktion ist die perfekte Antwort. Siehe die Funktionsdefinition - api.jquery.com/prop
0 Stimmen
Attr() funktioniert nicht mit IE. prop() ist die beste Option
0 Stimmen
$(".myCheckBox").prop("checked", true)