2014-02-19 7 views
0

Моего HTML части ниже:Как получить значение выбранной кнопки радио

<input id="yes" save-value="yes" value="no" name="view_y" class="switch-input yes" type="radio"> 
<label checked="checked" class="switch-label switch-label-off selected" for="yes">Yes</label> 
<input id="no" save-value="no" value="no" name="view_n" class="switch-input no" type="radio"> 
<label class="switch-label switch-label-on" for="no">No</label> 
<span class="switch-selection"></span> 

При нажатии каждой кнопки проверяется = «проверен» и выбранные параметры будут меняться от да без ярлыков.

С помощью этих параметров, как я могу получить значение сохранения выбранного переключателя. Поскольку я использую Handlebars js (json) в моей опции значения, я хочу получить значение сохранения выбранного переключателя.

Как я это делаю?

ответ

1

Предполагая, класс switch-input назначается только этих двух элементов ввода, вы можете использовать его вместе с проверяемой селектором

var value = $('input.switch-input').filter(':checked').attr('save-value'); 
//or var value = $('input.switch-input:checked').attr('save-value'); 

Примечание: Предпочитают использовать данных- * атрибуты для хранения пользовательских атрибутов


Я думаю, что переключатели на самом деле не проверяются, изменены только атрибуты этикеток, добавьте дополнительный класс к ярлыкам, например myclass

<input id="yes" save-value="yes" value="no" name="view_y" class="switch-input yes" type="radio"/> 
<label checked="checked" class="myclass switch-label switch-label-off selected" for="yes">Yes</label> 
<input id="no" save-value="no" value="no" name="view_n" class="switch-input no" type="radio"/> 
<label class="myclass switch-label switch-label-on" for="no">No</label> 
<span class="switch-selection"></span> 

затем

var value = $('.myclass[checked="checked"]').prev('input').attr('save-value'); 
console.log(value) 
+0

он показывает мне неопределенный, когда я использую свой код .. – user3271762

+0

@ user3271762 см. Обновление –

+0

это сработало Arun..thanks – user3271762

0

Во-первых, ваши радиокнопки должны иметь один и тот же атрибут имени, скажем view, так что браузер будет ограничить выбор только одного из них. Затем вы можете использовать $('[name="view"]:checked').val() для получения значения выбранного переключателя.

0

У вас есть какая-то ошибка в HTML коде, вы кладете проверяемый атрибут неверного тега, смотрите в этом примере:

$('body').on('change','input',function() { 
    $('.switch-selection').html($(this).attr('save-value')); 
}); 

http://jsfiddle.net/9Pj3g/2/

+0

это показывает мне undefined .. я обновил вашу скрипку, проверяю его и дайте мне знать. – user3271762

Смежные вопросы