我正在使用复选框的控件数组来捕获多个选择
以下代码(带有两个复选框)运行良好,并按预期返回值2(或者有多少).
但是,如果数组中只有一个复选框项,则返回0(零)的长度....为什么会这样?它不应该返回1的长度?
我在Internet Explorer和Chrome中尝试了相同的结果.作为一种解决方法,我必须在数组中包含一个隐藏的伪造复选框,以确保在运行代码时总有两个或更多项.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title></title>
<script language="javascript" type="text/javascript">
function categoryOnClick() {
var selectedRows = document.searchForm.elements['categorySelect[]'];
alert(selectedRows.length);
}
</script>
</head>
<body>
<form name="searchForm" action="">
<input type="checkbox" name="categorySelect[]" id="1" onclick="categoryOnClick();"/>
<input type="checkbox" name="categorySelect[]" id="2" onclick="categoryOnClick();"/>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
返回0(零)长度的代码...
<form name="searchForm" action="">
<input type="checkbox" name="categorySelect[]" id="1" onclick="categoryOnClick();"/>
</form>
Run Code Online (Sandbox Code Playgroud)