Ma tahaksin teha midagi sellist, et märkida "märkeruut", kasutades jQuery:
$(".myCheckBox").checked(true);
või
$(".myCheckBox").selected(true);
Kas selline asi on olemas?
Kasutage .prop()
:
$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);
Kui töötate ainult ühe elemendiga, võite alati lihtsalt pääseda ligi aluseks olevale HTMLInputElement
ja muuta selle .checked
omadust:
$('.myCheckbox')[0].checked = true;
$('.myCheckbox')[0].checked = false;
Meetodite .prop()
ja .attr()
kasutamise eelis selle asemel on see, et need toimivad kõigi sobitatud elementidega.
Meetod .prop()
ei ole saadaval, seega tuleb kasutada .attr()
.
$('.myCheckbox').attr('checked', true);
$('.myCheckbox').attr('checked', false);
Pange tähele, et see on jQuery's enne versiooni 1.6 kasutatav lähenemine ja on eelistatavam kui $('.myCheckbox').removeAttr('checked');
kasutamine, kuna viimane muudab, kui kast oli algselt märgitud, .reset()
üleskutse käitumist mis tahes vormil, mis seda sisaldab - see on peen, kuid tõenäoliselt ebasoovitav käitumismuutus.
Lisakonteksti saamiseks võib mõningaid ebatäielikke arutelusid atribuudi/omaduse checked
käsitlemise muudatuste kohta üleminekul versioonilt 1.5.x versioonile 1.6 leida versioon 1.6 release notes ja .prop()
dokumentatsiooni peatükis Attribuudid vs. omadused.
Kasutage:
$(".myCheckbox").attr('checked', true); // Deprecated
$(".myCheckbox").prop('checked', true);
Ja kui soovite kontrollida, kas märkeruut on märgitud või mitte:
$('.myCheckbox').is(':checked');
Saate teha
$('.myCheckbox').attr('checked',true) //Standards compliant
või
$("form #mycheckbox").attr('checked', true)
Kui teil on kohandatud kood onclick-sündmuses märkeruudu jaoks, mida soovite käivitada, kasutage selle asemel seda:
$("#mycheckbox").click();
Saate tühistada, eemaldades atribuudi täielikult:
$('.myCheckbox').removeAttr('checked')
Saate kõik märkeruudud ära märkida nii:
$(".myCheckbox").each(function(){
$("#mycheckbox").click()
});