补充:笔误!应该总是提示“document.Form1.strControlName.length为空或不是对象!”的错误。

解决方案 »

  1.   

    strControlName这是什么,根本就没有这个对象
    直接写document.Form1.length
      

  2.   

    也可以写document.Form1.elements.length
    后面写document.Form1.elements[i].checked
      

  3.   

    换作:document.getElementsByName("Q_1").length
      

  4.   

    <script language="javascript">
    <!--
    //根据指定的单选框或复选框名,检查该单选框或复选框是否有选项被选中。有-true;无选中-false。
     function checkRadioCheck(strControlName)
      {
       var j=0;
       for (i=0;i<document.all(strControlName).length;i++)
       {
        if (document.all(strControlName)[i].checked)
         {
          j=1;
         }
       }

        if (j==1)
        {
         return true;
        }
        else
        {
      return false;
        }
     }//检查Form中控件值的合法性。
     function doSubmit()
     {
      if (checkRadioCheck("Q_1")==false)
      {
       alert("请选择问题1的答案!");
       return false;
      }
     }
    //-->
    </script>
    <body>
    <form id="Form1" method="post"  onsubmit="return doSubmit()">
    <INPUT type="checkbox" value="计算机等级考试[一级]" name="Q_1">a1      <INPUT type="checkbox" value="计算机等级考试[二级]" name="Q_1">a2      
    <INPUT type="checkbox" value="计算机等级考试[三级]" name="Q_1">a3<input name="button1" Text="提交" type="submit">
    </form> 
      

  5.   

    问题解决了!
    document.Form1.strControlName.length
    改成
    document.Form1.elements(strControlName).length