如何添加日期验证?

时间:2016-08-19 00:25:59

标签: javascript jquery html forms validation

这是我用来发布数据的表单。所有这些在输入方面都很好。这仅供参考我的javascript验证表单。

<form action= "<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="post" name="input" id="input">
            <br>
            <table>
              <tr>
                <th>Animal Name</th>
                <td><input type="text" name="ANM_NAME" id="ANM_NAME" maxlength="20"></td>
              </tr>
              <tr>
                <th>Owner Name</th>
                <td><input type="text" name="OWN_NAME" id="OWN_NAME" maxlength="20"></td>
              </tr>
              <tr>
                <th>Sign in</th>
                <td><input type="date" name="SIGN_IN" id="SIGN_IN"></td>
              </tr>
              <tr>
                <th>Medication</th>
                <td><input type="text" name="MEDS" id="MEDS" maxlength="20"></td>
              </tr>
              <tr>
                <th>Special Requirements</th>
                <td><input type="text" name="SPEC" id="SPEC" maxlength="20"></td>
              </tr>
              <tr>
                <th>Food</th>
                <td><input type="text" name="FOOD" id="FOOD" maxlength="20"></td>
              </tr>
              <tr>
                <th>Notes</th>
                <td><input type="text" name="NOTE" id="NOTE" maxlength="20"></td>
              </tr>
            </table>
            <br>
        <input type="button" id="button" value="Submit">
      </form>

目前我有这个用于验证,在按钮单击它将var标志设置为true然后检查输入类型文本以查看它们是否有文本,如果它们提交了文本,如果不是它会创建弹出警报。

  <!-- Checking if inputs are entered-->
  <script>
  $("#button").click(function(){
    var flag=true;

    // check all input values
    $("input[type='text']").each(function(){
        if( $(this).val()=="" ){
            flag=false;
        }
    });

    // submit the form
    if(flag){
        $("form#input").submit()
    }else{
        // You should do something here.
        alert("Please fill all inputs!");
    }
  });
  </script>

但它对日期不起作用,因为它使用不同的输入类型。如何将日期输入添加到此验证中?

1 个答案:

答案 0 :(得分:1)

您可以使用分隔符选择多种输入类型:

<script>
  $("#button").click(function() {
    var flag = true;

    // check all input values
    $("input[type='text'],input[type='date']").each(function() {
      if ($(this).val() == "") {
        flag = false;
      }
    });

    // submit the form
    if (flag) {
      $("form#input").submit()
    } else {
      // You should do something here.
      alert("Please fill all inputs!");
    }
  });
</script>