有时候会动态生成的checkbox表单,通常该表单的数据大于等于2个时,很方便去检测。如果表单的数量是一个时也方便检测,但是由于动态的,所以表单的数量不确定,可能是一个,也可以是多个,所以采用以下代码可以解决问题。
<script language="javascript">
function check(){
j=0;
len=document.getElementsByName("test").length;
if (len>1)
{
for(var i=0;i<len;i++)
{
if (document.form1.test[i].checked==true)
{
j++;
}
}
if (j==0)
{
alert('你没有选择');return false;
}
else
{
alert('已经选择');
}
}
else
{
if (document.form1.test.checked==true)
{
alert('通过');
}
else
{
alert('请选择');
return false;
}
}
}
</script>
<form name="form1" method="post" action="">
<!--这里是动态生成的checkbox表单,可能是一个,也可能是多个-->
<input type="checkbox" name="test" id="test" value="1">
1
<input type="checkbox" name="test" id="test" value="2">
2
<input type="checkbox" name="test" id="test" value="3">
3
<input type="checkbox" name="test" id="test" value="4">
4
<input name="Submit" type="submit" onClick="return check()" value="提交">
</form>