Kiedy zaznaczam pole wyboru, chcę, żeby się włączyło <p>
#0099ff
.
Chcę, aby po odznaczeniu tego pola wyboru cofnęło to.
Kod, który mam do tej pory:
$('#checkbox').click(function(){
if ($('#checkbox').attr('checked')) {
/* NOT SURE WHAT TO DO HERE */
}
})
.click()
jest wywoływana w przypadku kliknięcia. Dlatego nie rozumiem, co masz na myśli mówiąc „włącz” i „wyłącz”. Jeśli pole wyboru jest zaznaczone, możesz wywołać funkcjęa()
. Ale musisz napisać funkcję reverse, która będzie wywoływana, gdy pole wyboru nie jest zaznaczone. Jestem zmieszany..bind()
i.unbind()
zdarzenia do innego elementu na podstawie stanu pola wyboru. Czy tego szukasz?prop()
tego, do czego chciał użyć tego pytaniaattr()
;prop()
metoda nie została utworzona wtedy. Odpowiedzi dotyczącethis.checked
prawdopodobnie są jednak nadal przydatne.Odpowiedzi:
Chciałbym używać
.change()
ithis.checked
:-
O używaniu
this.checked
Andy E napisał świetny opis tego, jak często nadużywamy jQuery: Wykorzystujemy niesamowitą moc jQuery do uzyskiwania dostępu do właściwości elementu . W artykule szczegółowo traktuje stosowanie
.attr("id")
ale w przypadku, gdy#checkbox
jest<input type="checkbox" />
elementem kwestia jest taka sama$(...).attr('checked')
(lub nawet$(...).is(':checked')
) vs.this.checked
.źródło
Spróbuj tego.
Czasami przesadzamy z jquery. Wiele rzeczy można osiągnąć używając jquery z prostym javascriptem.
źródło
Może się zdarzyć, że opcja „this.checked” jest zawsze włączona. Dlatego polecam:
źródło
$(':checkbox')
na, żeby to działało;)lepiej jest zdefiniować klasę innym kolorem, a potem zmienić klasę
w ten sposób twój kod jest czystszy, ponieważ nie musisz określać wszystkich właściwości css (powiedzmy, że chcesz dodać obramowanie, styl tekstu lub inne ...), ale po prostu zmieniasz klasę
źródło
$('#checkbox').attr('checked')
, jeśli wiemy, że#checkbox
jest to pole wyboru (jeśli nie, identyfikator jest raczej mylący).this.checked
zrobi.Znalazłem szalone rozwiązanie do radzenia sobie z tym problemem z zaznaczeniem pola wyboru lub zaznaczeniem tutaj to mój algorytm ... utwórz zmienną globalną, powiedzmy var check_holder
check_holder ma 3 stany
Jeśli pole wyboru jest zaznaczone,
Powyższy kod można wykorzystać w wielu sytuacjach, aby dowiedzieć się, czy pole wyboru zostało zaznaczone, czy nie. Koncepcja, która się za tym kryje, polega na zapisaniu stanów pól wyboru w zmiennej, tj. Kiedy jest włączona, wyłączona. Mam nadzieję, że logikę można wykorzystać do rozwiązania problemu.
źródło
Sprawdź ten kod:
źródło
źródło
Prawdopodobnie możesz przejść z tym kodem, aby podjąć działania, gdy pole wyboru jest zaznaczone lub odznaczone.
źródło
Chciałbym zrobić :
Zobacz: https://www.w3schools.com/jsref/prop_checkbox_checked.asp
źródło
Optymalna implementacja
Próbny
źródło
Dlaczego nie skorzystać z wbudowanych wydarzeń?
źródło