【问题标题】:Javascript checkbox form validationJavascript复选框表单验证
【发布时间】:2012-06-22 18:18:31
【问题描述】:

我正在尝试将此链接用作我的资源:@​​987654321@

我了解它对文本框的工作原理,但是如何让它检测复选框的表单验证?例如,如果我有一个带有复选框的页面(都具有相同的“名称”值),我想确保至少有一个框被选中......我该怎么做?如果未选中复选框,我对发送什么发布请求以及 javascript 应该如何捕获它感到有点困惑。谢谢。

编辑----

让它工作,这里有一些代码供未来的人使用:

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function Validate(){
   if(!validateForm()){
       alert("Something happened");
       return false;
   }
return true
}
function validateForm()
{
    var c=document.getElementsByTagName('input');
    for (var i = 0; i<c.length; i++){
        if (c[i].type=='checkbox')
        {
            if (c[i].checked){return true}
        }
    }
    return false;
}
</script>
</head>
<body>
<form name="myForm" action="demo_form.asp" onsubmit="return Validate()" method="post">
Value: <input type="checkbox" name="fname" value="value">
Value2: <input type="checkbox" name="fname" value="value2">
...<more boxes here>
<input type="submit" value="Submit">
</form>
</body>
</html>

【问题讨论】:

    标签: javascript forms validation


    【解决方案1】:

    这是一个可以满足您要求的示例,可以在此页面中进行测试:

    function Validate(){
       if(!validateForm()){
           alert("You must check atleast one of the checkboxes");
           return false;
       }
    return true
    }
    function validateForm()
    {
        var c=document.getElementsByTagName('input');
        for (var i = 0; i<c.length; i++){
            if (c[i].type=='checkbox')
            {
                if (c[i].checked){return true}
            }
        }
        return false;
    }
    <form name="myForm" action="demo_form.asp" onsubmit="return Validate()" method="post">
    Option 1: <input type="checkbox" name="option1" value="1"><br />
    Option 2: <input type="checkbox" name="option2" value="2"><br />
    <input type="submit" value="Submit Form">
    </form>

    【讨论】:

      【解决方案2】:

      function ValidateForm(form){
      ErrorText= "";
      if ( ( form.gender[0].checked == false ) && ( form.gender[1].checked == false ) )
      {
      alert ( "Please choose your Gender: Male or Female" );
      return false;
      }
      if (ErrorText= "") { form.submit() }
      }
      <form name="feedback" action="#" method=post>
      Your Gender: <input type="checkbox" name="gender" value="Male"> Male
      <input type="checkbox" name="gender" value="Female"> Female
      
      <input type="reset" value="Reset">
        <input type="button" name="SubmitButton" value="Submit" onClick="ValidateForm(this.form)">
      </form>

      【讨论】:

        猜你喜欢
        • 2017-05-04
        • 2018-02-19
        • 1970-01-01
        • 1970-01-01
        • 2011-11-27
        • 2012-06-29
        • 2023-03-14
        • 2011-10-24
        • 1970-01-01
        相关资源
        最近更新 更多