2014-12-21 5 views
0

Я хочу, чтобы получить значение кнопки радио выбраннойJQuery всегда возвращает 0

HTML

<form id='formTeacherOptions' method='post' target='_self' action='static.php'>  
    <div id='subjectoptions'> 
     <input name='radioGrpSbjOption' type='radio' value='0' /> View Subject <br /> 
     <input name='radioGrpSbjOption' type='radio' value='1' /> Update Subject <br />    
    </div> 
    <div id='testoption'> 
     <input name='radioGrpSbjOption' type='radio' value='2' /> Create Test 
     <div id='testoptionsubjects'> </div> 
     <div id='testoptiontopic'> </div> 

     <br /> 
     <input name='radioGrpSbjOption' type='radio' value='3' /> View/Update Test <br /> 
     <input name='radioGrpSbjOption' type='radio' value='4' /> Activated Test <br /> 
    </div> 
    <div id='reportoptions'> 
     <input name='radioGrpSbjOption' type='radio' value='5' /> Quiz Report <br /> 
     <input name='radioGrpSbjOption' type='radio' value='6' /> Exam Report <br /> 
    </div> 
    <button id='' type='button'> Submit </button> 
    </form> 

JS

$('input[name="radioGrpSbjOption"]').bind('change', function(){ 
    alert ($('input[name="radioGrpSbjOption"]').val()); 
}) 

Возвращаемое значение всегда равно 0. Что не так с моим кодом?

+1

Использование ': checked' селектор – Satpal

+0

Спасибо, я раньше не знал селектор. – jaa2013

+1

Вы вводите '$ ('input [name =" radioGrpSbjOption "]')' находите все радиостанции и возвращаете сначала одно значение, которое равно '0'. –

ответ

4

Используйте :checked селектор

alert ($('input[name="radioGrpSbjOption"]:checked').val()); 
1

Ваш код $('input[name="radioGrpSbjOption"]') найти все радиоприемники и возвращает первое одно значение, которое 0. поэтому изменить ваш код для этого:

$('input[name="radioGrpSbjOption"]').bind('change', function(){ 
    alert ($('input[name="radioGrpSbjOption"]:checked').val()); 
}); 

использует :checked селектор, чтобы найти выбранные входы с name="radioGrpSbjOption"

jsFiddle Demo

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