Jak mogę uzyskać wartość pola wyboru w jQuery?
532
Aby uzyskać wartość atrybutu Value, możesz zrobić coś takiego:
$("input[type='checkbox']").val();
Lub jeśli ustawiłeś dla niego class
lub id
, możesz:
$('#check_id').val();
$('.check_class').val();
Jednak zwróci tę samą wartość, niezależnie od tego, czy jest zaznaczona, czy nie, może to być mylące, ponieważ różni się od zachowania formularza przesłanego.
Aby sprawdzić, czy jest zaznaczone, czy nie:
if ($('#check_id').is(":checked"))
{
// it is checked
}
$("input:checkbox")
. Wydaje się też, że w selektorze klas jest literówka ...$($0).val()
w Chrome i odznaczę pole wyboru, odpowiedź jest „włączona”, nawet jeśli nie jest zaznaczona. Ale$($0).is(":checked")
zwraca właściwą wartość.[type="checkbox"]
ma lepszą wydajność w nowoczesnych przeglądarkach niż:checkbox
.$('#check_id').val();
aby$('#check_id').is(":checked");
zwrócić wartość true lub false.Te 2 sposoby działają:
$('#checkbox').prop('checked')
$('#checkbox').is(':checked')
(dzięki @mgsloan)źródło
Wypróbuj to małe rozwiązanie:
lub
źródło
Jedyne prawidłowe sposoby pobierania wartości pola wyboru są następujące
jak wyjaśniono w oficjalnych dokumentach na stronie jQuery. Pozostałe metody nie mają nic wspólnego z właściwością pola wyboru, sprawdzają atrybut, co oznacza, że testują stan początkowy pola wyboru, gdy zostało załadowane. W skrócie:
elem.checked
) Lub możesz użyć,$(elem).prop("checked")
jeśli chcesz polegać na jQuery.$(elem).is(":checked")
.Odpowiedzi są mylące, sprawdź sam:
http://api.jquery.com/prop/
źródło
.is(":checked")
i.prop(":checked")
pracują dla mnie tak samo w / jQuery 1.10.0Żeby wyjaśnić:
Zwróci „prawda” lub „fałsz”
źródło
źródło
źródło
Prosty, ale skuteczny i zakłada, że wiesz, że pole wyboru zostanie znalezione:
Daje
true
/false
źródło
Przykładowe
demo
źródło
Pomimo faktu, że to pytanie wymaga rozwiązania jQuery, oto czysta odpowiedź JavaScript, ponieważ nikt o tym nie wspominał.
Bez jQuery:
Wystarczy wybrać element i uzyskać dostęp do
checked
właściwości (która zwraca wartość logiczną).Oto krótki przykład słuchania
change
wydarzenia:Aby zaznaczyć zaznaczone elementy, użyj
:checked
pseudo-klasy (input[type="checkbox"]:checked
).Oto przykład, który iteruje sprawdzane
input
elementy i zwraca zmapowaną tablicę nazw sprawdzanych elementów.Przykład tutaj
Pokaż fragment kodu
źródło
checked
właściwość jest łatwo dostępna w natywnym elemencie DOM. Niektóre osoby, które szukają takich pytań / odpowiedzi, na ogół nie zdają sobie sprawy z tego, że jQuery nie jest czasem konieczne. Innymi słowy, ludzie o wąskich umysłach nie są docelową grupą demograficzną dla tej odpowiedzi.Oto jak uzyskać wartość wszystkich zaznaczonych pól wyboru jako tablicy:
źródło
aby uzyskać wartość zaznaczonego pola wyboru w
jquery
:w
pure js
:źródło
Użyj następującego kodu:
źródło
źródło
Najlepszym sposobem jest
$('input[name="line"]:checked').val()
A także możesz uzyskać zaznaczony tekst
$('input[name="line"]:checked').text()
Dodaj atrybut wartości i nazwę do danych wejściowych przycisku opcji. Upewnij się, że wszystkie dane wejściowe mają ten sam atrybut nazwy.
źródło
źródło
Tylko uwaga, na dzień dzisiejszy, 2018, ze względu na zmiany interfejsu API na przestrzeni lat. removeAttr są osłabione, NIE działają już!
Jquery Zaznacz lub odznacz pole wyboru:
Źle, już nie działa.
Zamiast tego powinieneś:
źródło