我做了一系列的复选框,每个的name都不一样
请问怎么在点击提交的时候判断勾选了几个?
要在真正提交之前判断,如果没有勾选要求的数目的话,就不提交,数目对了就提交

解决方案 »

  1.   

    复选框适合用循环做!
    首先找到他们的name或者id
    <html>
     <head>
      <title> New Document </title>
     <script type="text/javascript">
      function xuan(){ 
       var arr=document.getElementsByName("a");
       for (var i=0;i<arr.length;i++)
       {
        if(arr[i].checked==true){
     alert(arr[i].value);
    }
       }
       
      }
     </script>
     </head>
     
     <body>
      <form name="frm">
       <input type="checkbox" name="a" value="嘿嘿">
       <input type="checkbox" name="a" value="呵呵">
       <input type="button" value="b" onclick="xuan()">
      </form>
     </body>
    </html>
      

  2.   


    var check=function(form){
    var inputs = form.getElementsByTagName("input");
      for(var i=0;i<inputs.length;i++){
        var type = inputs[i].type;
        if(type==undefined) type="text";
        else type=inputs[i].type.toLowerCase();   if(type=="checkbox" && !inputs[i].checked){
        //没有勾选
       }
      }
    }
      

  3.   


    <form action="" method="post" onsubmit="return check(this)">
    ...你的复选框
    </form>
    //接上面的
      

  4.   

    ?谢谢两位,我的复选框的名字是asp循环出来的,不知道可以那样在js里得到name吗?
      

  5.   

    那名字该怎么写
    if (xm0.checked == true) {num = num + 1;  }
    if (xm1.checked == true) {num = num + 1;  }
    if (xm2.checked == true) {num = num + 1;  }
    if (xm3.checked == true) {num = num + 1;  }
    if (xm4.checked == true) {num = num + 1;  }
    if (xm5.checked == true) {num = num + 1;  }
    这样写可以吗
      

  6.   

    <% for i= 0 to votenum %>
    <tr style="height:30px;"><td><input type="checkbox" name="xm<%=i%>" value='1'>&nbsp;&nbsp;<%=xm(i)%></td></tr>
    <% next %>
    这样循环出来的
      

  7.   


    //如果有一个容器把所有的checkBox包进去了,给它一个ID="aa"
    function checkBoxs(id, minSize) {
        var list = document.getElementById(id).getElementsByTagName('input');
        var len = list.length;
        var num = 0;
        var t = '';
        var listItem;
        for(var i = 0; i < len; i++) {
            listItem = list[i];  
            t = listItem.type? listItem.type.toLowerCase() : 'not';
            if(t == 'checkBox' && listItem.checked) {
                num++;
            }
        }
        return num >= minSize? true : false;
    }
    //checkBoxs('aa', 5);