我正在使用复选框的控件数组来捕获多项选择
下面的代码,带有两个复选框,运行良好,并按预期返回值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>
返回 0(零)长度的代码...
<form name="searchForm" action="">
<input type="checkbox" name="categorySelect[]" id="1" onclick="categoryOnClick();"/>
</form>