Javascript:验证单选按钮

Javascript: Validate radio buttons

本文关键字:单选按钮 验证 Javascript      更新时间:2023-09-26

我试图验证一组两性单选按钮,但遇到了一个错误。我有以下内容:

它给出了一个关于长度的错误;说它是未定义的。

function validateSex(itm, elmt) {
	var dom = document.getElementById(elmt);
	var numChecked = 0;
	for (var index = 0; index < itm.length; index++) {
			if (itm[index].checked) {
			  numChecked++;
			  break;
		  }
	}
	// if sex not selected display error message.
	if (numChecked === 0) {
		dom.innerHTML = "Please select the sex.";
		return false;
	}else {
		dom.innerHTML = "";
		return true;
	}
}
<table>
	<tr>
		<td>
			<input type = "radio" name = "sex" value= "male"
				title = "Select sex" 
				onchange = "validateSex(this, 'msgSex')"/>Male
			<input type = "radio" name = "sex" value= "female"
				title = "Select sex" 
				onchange = "validateSex(this, 'msgSex')"/>Female
		</td>
		
		<td id = "msgSex"></td>
	</tr>
<table>

如果需要length属性,则应在validateSex(this, 'msgSex')中使用document.getElementsByName('sex')而不是this。但您无法验证这样的单选按钮。