2014-02-20 10 views
-2

Вот HTML часть:Как получить значение выбранной кнопки радио в JavaScript/JQuery

<input class="demo" radio-value="yes" name="Radios" id="sample1" value="" type="radio"> 
<input class="demo" radio-value="yes" name="Radios" id="sample2" value="" type="radio"> 
<input class="demo" radio-value="yes" name="Radios" id="sample3" value="" type="radio"> 
<input class="demo" radio-value="yes" name="Radios" id="sample4" value="" type="radio"> 

Как я могу узнать, какая кнопка радио выбирается пользователем, и как я могу знать значение выбранного радио кнопка.

Я хочу получить «радиозначение» выбранной кнопки. Потому что, я буду использовать значение для ввода json.

Как я могу это сделать ??

+4

все они не могут иметь такое же значение идентификатора. Идентификатор уникален по определению, где класс не обязательно должен быть. – scrappedcola

+2

Почему бы не установить атрибут 'value' вместо использования недопустимого атрибута' radio-value'? – undefined

+0

Название также является уникальным, для групп радиостанций вы должны использовать Radioios [] –

ответ

0
$('.demo:selected').val(); // class is demo 

Это сделало бы трюк!

Но вам нужно удалить id, что похоже на все элементы. Вы должны изменить их значение, например sample1, sample2 и т. Д. Затем вы можете получить значение и идентификатор.

+0

Будем надеяться, что 'demo' используется только как класс переключателей, на которые он нацеливается. – YMMD

1

Используйте :selected с селектором классов, чтобы получить выбранный переключатель. Вы должны дать уникальный ids для элементов html. Кроме того, значение всех радио-кнопки пустая строка, которую вы, возможно, потребуется присвоить некоторые значения для них

$('.demo:selected').val(); 
3

Прежде всего, все ваши радио-кнопки имеют одинаковый идентификатор - это является незаконным и может привести к непредсказуемому поведению. При условии, это фиксируется, вы можете сделать что-то вроде этого:

var selectedValue = $("input.demo:checked").val(); 

и для radio-value:

var selectedRadioValue = $("input.demo:checked").attr("radio-value"); 
Смежные вопросы