function  read()
{
var button=document.getElementsByName("d1");
for(var i=0;i<button.length;i++)
{
if(button[i].checked==false)
{
var p=document.getElementById("a3");
p.value="请选择性别";
return false;

}
else{
p.value="";

return true;

}
}

}第一个值男被选中可以提交
第二个值 女被选中就不能提交

解决方案 »

  1.   

     <td><input type="radio" name="d1"  value="男" />
          男
          <input type="radio" name="d1"  value="女" />
          女
         
             <input type="text" name="name" id="a3"  class="a1"/>
          </td>
    这是重点
      

  2.   

     <td><input type="radio" name="d1"  value="男" />
          男
          <input type="radio" name="d1"  value="女" />
          女
         
             <input type="text" name="name" id="a3"  class="a1"/>
          </td>
      

  3.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>第三题</title>
    <style type="text/css">
    .s1{
    float:right;
    }
    .a1{
    border-style:none;
    }
    </style>
    <script type="text/javascript">
    function show()
    {
    return (read());
    }
    function ming()
    {
    var name=document.getElementById("name");
    var name1=name.value;
    if(name1=="")
    {

    var p=document.getElementById("name2");
    p.value="用户名不能为空";



    return false;
    }
    }
    function pas()
    {
    var pass=document.getElementById("pass");
    var word=pass.value;
    if(word=="")
    {
    var p=document.getElementById("a2");

    p.value="密码不能为空";

    return false;
    }else if(!(word.length>=6&&word.length<=12))
    {
    var p=document.getElementById("a2");

    p.value="密码长度必须是6到12之间";

    return false;
    }
    else{
    return true;
    }
    }
    function  read()
    {
    var button=document.getElementsByName("d1");
    for(var i=0;i<button.length;i++)
    {
    if(button[i].checked==false)
    {
    var p=document.getElementById("a3");
    p.value="请选择性别";
    return false;

    }
    else if(button[i].checked==true){
    p.value="";

    return true;

    }
    }

    }
    </script></head><body>
    <form method="post" action="#" onsubmit="return show()"> 
    <table width="489" border="1">
      <tr>
        <td width="112" align="right">用户名:</td>
        <td width="367"><label for="textfield"></label>
        <input type="text" name="textfield" id="name"  onblur="ming()"/>
      
        <label for="textfield2">
          <input type="text" name="name" id="name2"  class="a1"/>
        </label></td>
      </tr>
      <tr>
        <td align="right">密码:</td>
        <td><input type="password" name="textfield3" id="pass"  onblur="pas()"/>
       <input type="text" name="name" id="a2"  class="a1"/>
        </td>
      </tr>
      <tr>
        <td align="right">性别:</td>
        <td><input type="radio" name="d1"  value="男" />
          男
          <input type="radio" name="d1"  value="女" />
          女
         
             <input type="text" name="name" id="a3"  class="a1"/>
          </td>
      </tr>
      <tr>
        <td align="right">出生日期:</td>
        <td><input type="text" name="textfield6" id="textfield6" /></td>
      </tr>
      <tr>
        <td align="right">电子邮箱地址:</td>
        <td><input type="text" name="textfield7" id="textfield7" /></td>
      </tr>
      <tr>
        <td height="23" colspan="2" align="center"><input type="submit" name="button2" id="button2" value="注册" />      <input type="button" name="button" id="button" value="清除" /></td>
      </tr>
    </table></form>
    </body>
    </html>
      

  4.   

    <form method="post" action="#" onsubmit="return show()">  
      

  5.   

    我觉得是for循环判断思路有问题
      

  6.   

    代码改成这样function read(){
    if(document.getElementsByName("d1")[0].checked==false)
    {
    var p=document.getElementById("a3");
    p.value="请选择性别";
    return false;
    }
    return true;
    }
      

  7.   

    var p=document.getElementById("a3");放到for循环的外面
      

  8.   

    var p=document.getElementById("a3");应该把这样的放在循环外面
      

  9.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>第三题</title>
    <style type="text/css">
    .s1{
    float:right;
    }
    .a1{
    border-style:none;
    }
    </style>
    <script type="text/javascript">
    function show()
    {
    return (read());
    }
    function ming()
    {
    var name=document.getElementById("name");
    var name1=name.value;
    if(name1=="")
    {

    var p=document.getElementById("name2");
    p.value="用户名不能为空";



    return false;
    }
    }
    function pas()
    {
    var pass=document.getElementById("pass");
    var word=pass.value;
    if(word=="")
    {
    var p=document.getElementById("a2");

    p.value="密码不能为空";

    return false;
    }else if(!(word.length>=6&&word.length<=12))
    {
    var p=document.getElementById("a2");

    p.value="密码长度必须是6到12之间";

    return false;
    }
    else{
    return true;
    }
    }
    function  read()
    {

    var button=document.getElementsByName("d1");
    var p=document.getElementById("a3");
    for(var i=0;i<button.length;i++)
    {
    if(button[i].checked==false)
    {

    p.value="请选择性别";
    return false;

    }else
    {

    p.value="";

    return true;
    }

    }


    }
    </script></head><body>
    <form method="post" action="#" onsubmit="return show()"> 
    <table width="489" border="1">
      <tr>
        <td width="112" align="right">用户名:</td>
        <td width="367"><label for="textfield"></label>
        <input type="text" name="textfield" id="name"  onblur="ming()"/>
      
        <label for="textfield2">
          <input type="text" name="name" id="name2"  class="a1"/>
        </label></td>
      </tr>
      <tr>
        <td align="right">密码:</td>
        <td><input type="password" name="textfield3" id="pass"  onblur="pas()"/>
       <input type="text" name="name" id="a2"  class="a1"/>
        </td>
      </tr>
      <tr>
        <td align="right">性别:</td>
        <td><input type="radio" name="d1"  value="男" />
          男
          <input type="radio" name="d1"  value="女" />
          女
         
             <input type="text" name="name" id="a3"  class="a1"/>
          </td>
      </tr>
      <tr>
        <td align="right">出生日期:</td>
        <td><input type="text" name="textfield6" id="textfield6" /></td>
      </tr>
      <tr>
        <td align="right">电子邮箱地址:</td>
        <td><input type="text" name="textfield7" id="textfield7" /></td>
      </tr>
      <tr>
        <td height="23" colspan="2" align="center"><input type="submit" name="button2" id="button2" value="注册" />      <input type="button" name="button" id="button" value="清除" /></td>
      </tr>
    </table></form>
    </body>
    </html>
      

  10.   

    <script type="text/javascript">
            function show() {
                var name = document.getElementById("name");
                var name1 = name.value;
                if (name1 == "") {                var p = document.getElementById("name2");
                    p.value = "用户名不能为空";                return false;            }
                var pass = document.getElementById("pass");
                var word = pass.value;
                if (word == "") {
                    var p = document.getElementById("a2");                p.value = "密码不能为空";                return false;
                } else if (!(word.length >= 6 && word.length <= 12)) {
                    var p = document.getElementById("a2");                p.value = "密码长度必须是6到12之间";                return false;
                }
                
                var a = document.getElementsByName("d1");
                var p = document.getElementById("a3");
                for (var i = 0; i < a.length; i++) {
                    if (a[i].checked == false) {                    p.value = "请选择性别";
                        return false;                }
                    else{
                        p.value = "";                    return true;                }
                }
            }
            
            
        </script>
    我直接给你整合在了show()方法里
      

  11.   

    哦知道了。。需要你自己再去写判断啊。。
    else{
                        p.value = "";                    return true;                }
    在这里面写。。当是女的就return false..男的就 p.value = "";                    return true;
      

  12.   

    var button=document.getElementsByName("d1");var p=document.getElementById("a3");
    var flag = false;
    for(var i=0;i<button.length;i++)
    {
    if(button[i].checked)
    {
    flag = true;
    p.value="";
    return true;
    }
    }
    if(!flag)
    {
    p.value="请选择性别";
    return false;
    }
      

  13.   

    在for里面判断a[i].checked == false,选择女和不选的情况下,a[0].checked肯定是false。
      

  14.   

    for (var i = 0; i < button.length; i++) {
      if (button[i].checked == false) {
        
      p.value = "请选择性别";
        
      }
      else {
        
      p.value = "";  return true;
      }  }
      return false;  }
    在for 外面加个return false;
    里面那个去掉。。再试下
      

  15.   

    function read()
    {
    var button=document.getElementsByName("d1");
    if(button[0].checked == false){
    var p=document.getElementById("a3");
    p.value="请选择性别";
    return false;
    }else{
    return true;
    }
    }
      

  16.   


    function read()
    {
    var button=document.getElementsByName("d1");
    for(var i=0;i<button.length;i++)
    {
    if(button[i].checked==false)
    {
    var p=document.getElementById("a3");
    p.value="请选择性别";
    return false;}
    else{
    p.value="";return true;}
    }}
    for(var i=0;i<button.length;i++)
    {
    if(button[i].checked==false)//这里明显有逻辑问题(你第一个“男”没选中就直接返回false跳出了)
    {
    var p=document.getElementById("a3");
    p.value="请选择性别";
    return false;
    }
    else{p.value="";return true;}//改成:
    function read()
    {
    var reValue=false;//定个变量
    var button=document.getElementsByName("d1");
    var p=document.getElementById("a3");
    for(var i=0;i<button.length;i++)
    {
    if(button[i].checked==true){reValue = true;break;}//如果有选中的就reValue为true 跳出循环
    }
            //再进行判断
    if(reValue){p.value="";return reValue;}else{p.value="请选择性别";return reValue;}
    }