Mam kilka takich pól wyboru. Jeśli pole wyboru „Check Me” jest zaznaczone, wszystkie pozostałe 3 pola wyboru powinny być włączone, w przeciwnym razie powinny być wyłączone. Jak mogę to zrobić za pomocą jQuery?
<form name="frmChkForm" id="frmChkForm">
<input type="checkbox" name="chkcc9">Check Me
<input type="checkbox" name="chk9[120]">
<input type="checkbox" name="chk9[140]">
<input type="checkbox" name="chk9[150]">
</form>
$(this).change
zdarzenie kliknięcia pierwszego pola wyboru..prop()
zamiast.attr()
.To jest najbardziej aktualne rozwiązanie.
Oto szczegóły użycia dla
.attr()
i.prop()
.jQuery 1.6+
Użyj nowej
.prop()
funkcji:jQuery 1.5 i poniżej
.prop()
Funkcja nie jest dostępna, więc trzeba użyć.attr()
.Aby wyłączyć pole wyboru (ustawiając wartość atrybutu disabled), wykonaj
i do włączenia (poprzez całkowite usunięcie atrybutu) zrobić
Dowolna wersja jQuery
Jeśli pracujesz tylko z jednym elementem, zawsze będzie on najszybszy w użyciu
DOMElement.disabled = true
. Zaletą korzystania z funkcji.prop()
i.attr()
jest to, że będą działać na wszystkich dopasowanych elementach.ref: Ustawienie „zaznaczone” dla pola wyboru w jQuery?
źródło
Z dodatkową funkcjonalnością zapewniającą zaznaczenie / odznaczenie wszystkich pól wyboru, jeśli wszystkie poszczególne pola wyboru są zaznaczone:
źródło
Oto kolejna próbka wykorzystująca JQuery 1.10.2
źródło
źródło
źródło