<input type="checkbox" name="filter" id="comedyclubs"/>
<label for="comedyclubs">Comedy Clubs</label>
Jeśli mam pole wyboru z etykietą opisującą, jak mogę wybrać etykietę za pomocą jQuery? Czy łatwiej byłoby nadać identyfikatorowi etykietę identyfikator i wybrać go za pomocą $(#labelId)
?
jquery
checkbox
jquery-selectors
Darwyn
źródło
źródło
$('#comedyclubs')[0].labels
uzyskać dostęp do wszystkich przypisanych etykiet#comedyclubs
.To powinno pozwolić ci wybrać etykiety dla wszystkich pól w pętli. Wszystko co jest potrzebne do zapewnienia etykiety powinien powiedzieć
for='FIELD'
, gdzieFIELD
jest id pola, dla których ta etykieta jest zdefiniowana.źródło
To powinno to zrobić:
Jeśli masz w swoim identyfikatorze znaki inne niż alfanumeryczne, musisz otoczyć wartość attr cudzysłowami:
źródło
Innym rozwiązaniem może być:
źródło
$("#comedyclubs").nextAll().first()
Dzięki Kip, dla tych, którzy mogą chcieć osiągnąć to samo za pomocą $ (this) podczas iteracji lub kojarzenia w ramach funkcji:
Szukałem przez chwilę podczas pracy nad tym projektem, ale nie znalazłem dobrego przykładu, więc mam nadzieję, że pomoże to innym osobom, które mogą chcieć rozwiązać ten sam problem.
W powyższym przykładzie moim celem było ukrycie wejść radiowych i stylizowanie etykiet, aby zapewnić użytkownikom wygodniejsze działanie (zmianę orientacji schematu blokowego).
Tutaj możesz zobaczyć przykład
Jeśli podoba ci się ten przykład, oto css:
i odpowiednia część JavaScript:
Alternatywny root do pierwotnego pytania, ponieważ etykieta podąża za danymi wejściowymi, możesz przejść z czystym rozwiązaniem css i całkowicie unikać używania JavaScript ...
źródło