繁体   English   中英

尝试验证是否选择了单选按钮

[英]Trying to validate that a radio button was selected

我看了几个地方,找不到一个有效的例子。 在我的示例中,我选择了无线电组并测试了null,因此我可以发出一条消息,告诉用户进行选择。

<script>                        
function validate(form) {   
    fail = validate__veteran(form);
    if (fail == "") { 
        return true;
        } else { 
            alert(fail);
            return false;
        }
    }
</script>
<script> 

    function validate_veteran(form) {
        var radios = document.getElementsById('veteran');
        if (radios == null) {
            return "please make a selection for veteran";
        }
        return "";
    }
</script>
<form method="post" action="checkbox.php" onSubmit="return validate(this)">
        Veteran?<**input type="radio" id="veteran"** name="veteran" value="veteran" /> yes <br>
                <input type="radio" id="veteran" name="veteran" value="" /> no <br>
<input id="submit" type="submit" name="submit" value="Signup" />                        
</form>

您可以像这样获得检查状态:

var radios = document.getElementById('veteran').checked;
  1. 更好的是,为您的单选按钮分配两个不同的ID,并检查使用哪个检查

      document.getElementsById('ContorlID').checked 

或者通过ur代码gng,使用value属性

  function validate_veteran(form) {
       var radios = document.getElementsById('veteran');
       if (radios.value == "" {
         return "please make a selection for veteran";
       }
    return "";
  }

如果你可以使用Jquery,这可以在单行中实现

    if ($('input[name=veteran]:checked').length <1) {
      alert("please make a selection for veteran");
return false;
    }

将您的表格更改为:

<form method="post" name='myForm' action="checkbox.php" onSubmit="return validate(this)">

   <script>
    function validate_veteran(form) 
    var veteran="";
        for (var i=0; i < document.myForm.veteran.length; i++)
   {
   if (document.myForm.veteran[i].checked)
      {
      veteran = document.myForm.veteran[i].value;
      }
 return veteran
    }
    </script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM