ga1[i].name来判断不就简单多了

解决方案 »

  1.   

    !!1你说明白一点,但是我的问题是
    “value为空或对象不存在”
      

  2.   

    代码不全,自己写了一个,你看看可否
    <body bgcolor="#FFFFFF">
    <table border="1">
    <tr>
    <td>
     会参加 (选此项第3题可以不做)<input type="radio" name="rad" value="1"><br>
     不参加 (选此项第2题可以不做)<input type="radio" name="rad" value="2"><br>
     看情况再说<input type="radio" name="rad" value="3"><br>
    </td>
    <td>
         锻炼口语<input type="radio" name="rad1" value="1"><br>
     结交朋友<input type="radio" name="rad1" value="2"><br>
     解决学习中遇到的问题<input type="radio" name="rad1" value="3"><br>
     其他<input type="radio" name="rad1" value="4"><br>
    </td>
    <td>
     没意思<input type="radio" name="rad2" value="1"><br>
     没时间<input type="radio" name="rad2" value="2"><br>
     没这方面的需要<input type="radio" name="rad2" value="3"><br>
     其他<input type="radio" name="rad2" value="4"><br>
    </td>
    <td>
     口语课程的拓展与补充<input type="radio" name="rad3" value="1"><br>
     其它主题的交流<input type="radio" name="rad3" value="2"><br>
     无固定主题的随意聊天<input type="radio" name="rad3" value="3"><br>
    </td>
    </tr>
    </table>
    <button onclick="kiss()">gooo</button>
    <script language="JavaScript">
    <!--
    var rad = document.all.rad;
    var rad1 = document.all.rad1;
    var rad2 = document.all.rad2;
    var rad3 = document.all.rad3;
    function kiss()
    {
       var flag = false;
       if(checkValue(rad))
       {
          switch(checkValue(rad))
      {
         case "1":if(checkValue(rad1))
         flag = true;
      else
      {
         alert("请完成第二道题");
     return;
      }
      if(checkValue(rad3))
         flag = true;
      else
      {
         alert("请完成第四道题");
     return;
      }
    break;
    case "2":if(checkValue(rad2))
         flag = true;
      else
      {
         alert("请完成第三道题");
     return;
      }
      if(checkValue(rad3))
         flag = true;
      else
      {
         alert("请完成第四道题");
     return;
      }
    break;
    case "3":if(checkValue(rad1))
         flag = true;
      else
      {
         alert("请完成第二道题");
     return;
      }
      if(checkValue(rad2))
         flag = true;
      else
      {
         alert("请完成第三道题");
     return;
      }
      if(checkValue(rad3))
         flag = true;
      else
      {
         alert("请完成第四道题");
     return;
      }
    break;
      }   }
       else
       {
          alert('请先选择第一题');
      return;
       }
       alert('现在可以提交了!')
    }function checkValue(obj)
    {
       var src = "";
       for(var i=0;i<obj.length;i++)
       {
    if(obj[i].checked)
      src = obj[i].value;
       }
       if(src != "")
        return src;
    }
    //-->
    </script>
    </body>
      

  3.   

    switch(ga1[i].value)
      
       case "a" :
       var ga2=document.add.a2;
    var blnok2=false;
    for(i=0;i<ga2.length;i++)
    {
       if(ga2[i].checked)
    {
       blnok2=true;
    }   
         }
    if(!blnok2)
    {
    alert("问题2必须选择");
    return false;
    }

       break;
      
       case "b":
       var ga3=document.add.a3;
    var blnok3=false;
    for(i=0;i<ga3.length;i++)
    {
       if(ga3[i].checked)
    {
       blnok3=true;
        
    }   
         }
    if(!blnok3)
    {
    alert("问题3必须选择");
    return false;
    }

       break;
    这样写对不对
      

  4.   

    不太对噢,等于a时,2,4必须选择,你只判断了2。 
    等于b时,3,4必须选择,你只判断了3。差一个判断呢还有不要return false;  直接return;就行了