我的复选框是以a[0],a[1],,,a[13]这样的形式命名的,在这种情况下,提交之后如何判断至少有一个是选中状态
我的代码是
<html>
<head>
<script language=javascript>
function checkvalid()
{
for(var i=0;i<2;i++)
{
if(document.frm.a[i].checked==true) {
alert('aaa');
return true;
}
}
alert('bbb');
return false;
}
</script>
</head>
<body>
<form method=post action='1.php' name=frm>
<input type=checkbox value='aaa' name=a[0]>aaa
<input type=checkbox value='aaa' name=a[1]>aaa
<input type=submit onclick="return checkvalid();"></form>
</body>
</html>
似乎在我加红的这句话上出问题了,我是新手,不知道这里面是否存在转义问题,想问一下该如何改正,我不想改变量名,因为想知道这样的情况下有没有解决的办法
我的代码是
<html>
<head>
<script language=javascript>
function checkvalid()
{
for(var i=0;i<2;i++)
{
if(document.frm.a[i].checked==true) {
alert('aaa');
return true;
}
}
alert('bbb');
return false;
}
</script>
</head>
<body>
<form method=post action='1.php' name=frm>
<input type=checkbox value='aaa' name=a[0]>aaa
<input type=checkbox value='aaa' name=a[1]>aaa
<input type=submit onclick="return checkvalid();"></form>
</body>
</html>
似乎在我加红的这句话上出问题了,我是新手,不知道这里面是否存在转义问题,想问一下该如何改正,我不想改变量名,因为想知道这样的情况下有没有解决的办法
<html>
<head>
<script language=javascript>
function checkvalid()
{
for(var i=0;i<2;i++)
{if(document.frm["a["+i+"]"].checked) {
alert('aaa'+i);
return true;
}
}alert('bbb');
return false;
}
</script>
</head>
<body>
<form method=post action='1.php' name=frm>
<input type=checkbox value='aaa' name='a[0]'>aaa
<input type=checkbox value='aaa' name='a[1]'>aaa
<input type=submit onclick="return checkvalid();"></form>
</body>
</html>
这样就可以了,但是楼主一般不要在name命名的时候name='a[1]' 不要包含特殊字符,名称a_1 或者a1就可以了
http://www.zfsj.net/article.asp?id=86
这篇文章写得不错,将来有人搜到这个帖子的话可以看一下