Opis problemu jest prosty. Muszę sprawdzić, czy użytkownik wybrał przycisk opcji z grupy. Każdy przycisk radiowy w grupie ma ten sam identyfikator.
Problem polega na tym, że nie mam kontroli nad sposobem generowania formularza. Oto przykładowy kod tego, jak wygląda kod kontrolny przycisku opcji:
<input type="radio" name='s_2_1_6_0' value='Mail copy to my bill to address' id = "InvCopyRadio" onchange = 'SWESubmitForm(document.SWEForm2_0,s_4,"","1-DPWJJF")' style="height:20;width:25" tabindex=1997 >
Oprócz tego po wybraniu przycisku opcji nie dodaje on do kontrolki atrybutu „zaznaczone”, tylko zaznaczony tekst (chyba tylko sprawdzona właściwość bez wartości) . Poniżej pokazano, jak wygląda wybrane sterowanie radiowe
<input type="radio" checked name='s_2_1_6_0' value='Mail copy to my bill to address' id = "InvCopyRadio" onchange = 'SWESubmitForm(document.SWEForm2_0,s_4,"","1-DPWJJF")' style="height:20;width:25" tabindex=1997 >
Czy ktoś może mi pomóc z kodem jQuery, który pomoże mi uzyskać wartość zaznaczonego przycisku opcji?
jquery
radio-button
siebel
użytkownik1114212
źródło
źródło
Odpowiedzi:
Po prostu użyj.
To takie proste.
źródło
null
, co jest logiczne, ale czasami może cię pomylić, gdy przyzwyczaisz się widzieć""
jako wartość domyślną przez.val()
połączenie.Po pierwsze, nie możesz mieć wielu elementów o tym samym identyfikatorze. Wiem, że powiedziałeś, że nie możesz kontrolować sposobu tworzenia formularza, ale ... spróbuj w jakiś sposób usunąć wszystkie identyfikatory z radia lub uczynić je wyjątkowymi.
Aby uzyskać wartość wybranego przycisku opcji, wybierz go według nazwy z
:checked
filtrem.EDYTOWAĆ
Więc nie masz kontroli nad nazwami. W takim przypadku powiedziałbym, aby umieścić wszystkie przyciski opcji w div, o nazwie powiedzmy
radioDiv
, a następnie nieznacznie zmodyfikować selektor:źródło
Najprostszym sposobem uzyskania wartości wybranego przycisku opcji jest:
Pomiędzy selektorem nie należy używać spacji.
źródło
Pamiętaj, aby owinąć to funkcją DOM ready (
$(function(){...});
lub$(document).ready(function(){...});
).źródło
radioID
identyfikator?:checked
..is(":checked")
.is()
Funkcja jQuery zwraca wartość logiczną (prawda lub fałsz), a nie element.źródło
Zwróci sprawdzoną wartość przycisku opcji.
źródło
dla zagnieżdżonych atrybutów
Nie zapomnij o pojedynczych nawiasach klamrowych dla nazwy
źródło
Uzyskaj wszystkie radia:
Filtruj, aby uzyskać ten, który jest zaznaczony
LUB
Innym sposobem na znalezienie wartości przycisku opcji
źródło
$('[name=your_inputs_names]:checked').val()
ponieważ zawsze mają tę samą unikalną nazwę.filter()
.filter()
. Chciałbym, żeby ta odpowiedź była na górze.Aby uzyskać wartość wybranego przycisku opcji, użyj RadioButtonName i formularza zawierającego identyfikator RadioButton.
LUB tylko przez
źródło
źródło
Zobacz poniżej przykład roboczy z kolekcją grup radiowych powiązanych z różnymi sekcjami. Twój schemat nazewnictwa jest ważny, ale idealnie powinieneś spróbować użyć spójnego schematu nazewnictwa dla danych wejściowych (szczególnie, gdy są one w sekcjach takich jak tutaj).
źródło
Użyj poniżej kodu
Pamiętaj, że atrybut wartości powinien być zdefiniowany, aby w wyniku mógł otrzymać „Mężczyzna” lub „Kobieta”.
źródło
Spróbuj tego z przykładem
źródło
Tylko według nazwy
źródło
źródło
undefined
skoro wiadomo na pewno, że wartość musi byćchecked
? W jQuery nie ma potrzeby."undefined"
jest niepotrzebne.Mam nadzieję, że to pomoże.
źródło
Najlepszym sposobem wyjaśnienia tego prostego tematu jest podanie prostego przykładu i odnośnika: -
HTML:
jquery: -
źródło
Wiem, że dołączam tak późno. Ale warto wspomnieć, że to trwa
A potem sprawdziłem to w moim js. To może być jak
`
źródło
i obsługiwać jquery dla alertu jak dla wartości ustawionej / zmienionej przez div id:
to takie proste....:-}
źródło
Kolejny łatwy sposób na zrozumienie ... Działa:
Kod HTML:
Kod Jquery:
źródło
przycisk grupowy ukrytej wartości radiowej do tablicy
źródło
Nie jestem javascript, ale znalazłem tutaj, aby przeszukać ten problem. Dla tego, kto google i tu znajdziesz, mam nadzieję, że to pomoże niektórym. Tak jak w przypadku pytania, jeśli mamy listę przycisków opcji:
Mogę znaleźć, który został wybrany za pomocą tego selektora:
Nawet jeśli nie wybrano żadnego elementu, nadal nie otrzymuję niezdefiniowanego błędu. Zatem nie musisz pisać dodatkowej instrukcji if przed pobraniem wartości elementu.
Oto bardzo prosty przykład jsfiddle .
źródło
Oto 2 przyciski opcji, a mianowicie rd1 i Radio1
Najprostszym sposobem sprawdzenia, który przycisk opcji jest zaznaczony, jest sprawdzenie właściwości indywidualnej („: selected”)
źródło
Nawet
input
nie jest konieczne, jak sugerują inne odpowiedzi. Można również użyć następującego kodu:źródło
input
i z niepotrzebnymi znakami cudzysłowu.źródło
źródło
Jeśli nie znasz osobnej nazwy lub chcesz sprawdzić wszystkie wejścia radiowe w formularzu, możesz użyć globalnego var, aby sprawdzić dla każdej grupy radiowej wartość tylko raz: `
źródło