Daugiau
patikrinti / panaikinti žymės langelį naudojant jquery?
Puslapyje turiu keletą įvesties teksto laukų ir jų reikšmes rodau naudodamas "JavaScript".
Naudoju .set("value","")
funkciją, kad galėčiau redaguoti reikšmę, pridėti papildomą žymės langelio lauką ir perduoti reikšmę.
Šiuo atveju noriu patikrinti, kad jei value == 1
, šis žymimasis langelis turėtų būti pažymėtas. Priešingu atveju jis turėtų likti nepažymėtas.
Tai padariau naudodamas du divus, bet man tai nepatinka, ar yra koks nors kitas sprendimas?
if(value == 1) {
$('#uncheck').hide();
$('#check').show();
} else{
$('#uncheck').show();
$('#check').hide();
}
580
3
JQuery 1.6+ :
.attr() nebenaudojama savybėms; vietoj jos naudokite naująją .prop() funkciją, nes:
Dėl jQuery < 1.6:
Jei norite pažymėti/atšaukti žymimąjį langelį, naudokite atributą
checked
ir jį pakeiskite. Naudodami jQuery galite daryti:Nes žinote, kad HTML kalba tai atrodytų maždaug taip:
Tačiau negalite pasitikėti .attr() metodu, kad gautumėte žymimojo langelio reikšmę (jei to reikia). Turėsite pasikliauti .prop() metodu.
Tam galite naudoti prop(), nes iki jQuery 1.6, .attr() metodas kartais atsižvelgdavo į savybių reikšmes, kai buvo gaunamos kai kurios savybės, ir tai galėjo sukelti nenuoseklų elgesį. Nuo jQuery 1.6** metodas
.prop()
suteikia galimybę aiškiai gauti savybių vertes, o.attr()
- atributus.arba tiesiog,
Snippet
Galite nustatyti žymimojo langelio būseną pagal reikšmę: