<input type="button" value="查看" onClick="user_click()">function selectcount(){
var optcheck=document.form1.optcheck;
var i=0;
for(var j=0;j<=optcheck.length;j++)
  if(optcheck[j].checked==true)
    i++;
return i;
}function user_click(){
alert(selectcount());
}

解决方案 »

  1.   

    代码贴完整好不var optcheck=document.form1.optcheck;这句对应的 html 呢
      

  2.   

    var optcheck=document.form1.optcheck;呢?
      

  3.   


      <form id="form1" name="form1">
    <INPUT TYPE="checkbox" NAME="optcheck">
    <INPUT TYPE="checkbox" NAME="optcheck">
    <INPUT TYPE="checkbox" NAME="optcheck">
    <input type="button" value="查看" onClick="user_click()">
      </form>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function selectcount(){
    var optcheck=document.form1.optcheck;
    var i=0;
    for(var j=0;j<optcheck.length;j++) //这里应该是j<optcheck.length
    if(optcheck[j].checked==true) i++;
    return i;
    }function user_click(){
    alert(selectcount());
    }
      

  4.   

    for(var j=0;j<=optcheck.length;j++)
    改成------>for(var j=0;j<optcheck.length;j++)试试
      

  5.   

    onClick="user_click()" 改成 onClick="user_click">
      

  6.   

     你的for和if都没有大括号
      

  7.   

    我用ie6和ff3测试你的代码没有问题,除了 script的尾标签不存在之外
      

  8.   

    var optcheck=document.form1.optcheck;
    应该是这的问题
      

  9.   


    <html>
    <body>
    <form id="form1" name="form1">
        <INPUT TYPE="checkbox" NAME="optcheck">
        <INPUT TYPE="checkbox" NAME="optcheck">
        <INPUT TYPE="checkbox" NAME="optcheck">
        <input type="button" value="?看" onClick="user_click()">
    </form>
    </body>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function selectcount(){
        var optcheck=document.form1.optcheck;
        var i=0;
        for(var j=0;j<optcheck.length;j++){
            if(optcheck[j].checked==true){ 
    i++;
        }
        }     
    return i;
    }function user_click(){
        alert(selectcount());
    }
    </script>
    </html>
      

  10.   

    不是,五楼的已经说的很清楚了,js数组的下标从0开始,for的时候不能用<= 只能用<