2014-10-11 2 views
-1

Я пытаюсь проверить группу двух радио-переключателей, но я получаю сообщение об ошибке. У меня есть следующее:Javascript: Подтвердить радиокнопки

Это ошибка на itm.length; говорит, что он не определен.

function validateSex(itm, elmt) { 
 
\t var dom = document.getElementById(elmt); 
 
\t var numChecked = 0; 
 

 
\t for (var index = 0; index < itm.length; index++) { 
 
\t \t \t if (itm[index].checked) { 
 
\t \t \t numChecked++; 
 
\t \t \t break; 
 
\t \t } 
 
\t } 
 

 
\t // if sex not selected display error message. 
 
\t if (numChecked === 0) { 
 
\t \t dom.innerHTML = "Please select the sex."; 
 
\t \t return false; 
 
\t }else { 
 
\t \t dom.innerHTML = ""; 
 
\t \t return true; 
 
\t } 
 
}
<table> 
 
\t <tr> 
 
\t \t <td> 
 
\t \t \t <input type = "radio" name = "sex" value= "male" 
 
\t \t \t \t title = "Select sex" 
 
\t \t \t \t onchange = "validateSex(this, 'msgSex')"/>Male 
 
\t \t \t <input type = "radio" name = "sex" value= "female" 
 
\t \t \t \t title = "Select sex" 
 
\t \t \t \t onchange = "validateSex(this, 'msgSex')"/>Female 
 
\t \t </td> 
 
\t \t 
 
\t \t <td id = "msgSex"></td> 
 
\t </tr> 
 
<table>

+0

сделать JSFiddle для большего понимания – prog1011

ответ

0

Вы должны использовать document.getElementsByName('sex') вместо this в validateSex(this, 'msgSex') если вам нужен атрибут длины. Но вы не можете проверить переключатель так.

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