Více na
zaškrtnout / odškrtnout checkbox pomocí jquery?
Na stránce mám několik vstupních textových polí a jejich hodnoty zobrazuji pomocí JavaScriptu.
K úpravě hodnoty, přidání dalšího zaškrtávacího políčka a předání hodnoty používám funkci .set("value","")
.
Zde chci zkontrolovat, že pokud hodnota == 1
, pak má být toto zaškrtávací políčko zaškrtnuto. V opačném případě by mělo zůstat nezaškrtnuté.
Udělal jsem to pomocí dvou divů, ale necítím se s tím dobře, existuje nějaké jiné řešení?
if(value == 1) {
$('#uncheck').hide();
$('#check').show();
} else{
$('#uncheck').show();
$('#check').hide();
}
580
3
Pro jQuery 1.6+ :
Funkce .attr() je pro vlastnosti zastaralá; místo ní použijte novou funkci .prop(), protože:
Pro jQuery < 1.6:
Chcete-li zaškrtnout/odškrtnout zaškrtávací políčko, použijte atribut
checked
a změňte jej. Pomocí jQuery můžete provést:Protože víte, že v HTML by to vypadalo nějak takto:
Metodě .attr() však nemůžete věřit, že získá hodnotu zaškrtávacího políčka (pokud ji potřebujete). Budete se muset spolehnout na metodu .prop().
K tomu můžete použít metodu prop(), protože před verzí jQuery 1.6 metoda .attr() někdy při načítání některých atributů zohledňovala hodnoty vlastností, což mohlo způsobit nekonzistentní chování. Od verze jQuery 1.6 poskytuje metoda
.prop()
způsob, jak explicitně načíst hodnoty vlastností, zatímco metoda.attr()
načítá atributy.nebo jednoduše,
Snippet
Stav zaškrtávacího políčka můžete nastavit na základě hodnoty: