Javascript 验证<;输入类型=";日期“&燃气轮机;

Javascript 验证<;输入类型=";日期“&燃气轮机;,javascript,html,Javascript,Html,在提交之前,我如何检查以验证它是否超过今天的日期 如果输入中有未来日期,则不提交表格 <html> <head> </head> <body> <form> <ul> <li> <label>Member Since </label> <input id="since" n

在提交之前,我如何检查
以验证它是否超过今天的日期

如果输入中有未来日期,则不提交表格

<html>
<head>
</head>
<body>
    <form>
        <ul>
            <li>
                <label>Member Since </label>
                <input id="since" name="since" size="2" maxlength="6" value="" type="date" required />
            </li>
            <li>
                <input type="Submit" name="Submit" id="btnsubmit" value="Submit" onclick="checkDate();" />
            </li>
        </ul>
    </form>
</body>
</html>

  • 成员自

类似的东西应该会对你有所帮助

var dateText = document.getElementById('since').value;
var date = new Date(dateText);
var now = new Date();
if (date > now) {
  console.log("Date needs to be in the past");
}

像这样的事情应该对你有帮助

var dateText = document.getElementById('since').value;
var date = new Date(dateText);
var now = new Date();
if (date > now) {
  console.log("Date needs to be in the past");
}

尝试将输入值转换为a,以便将当前值与脚本中的输入值进行比较

input = document.getElementById("since"); // gets element
value = input.value; // form value (string)
date = new Date(value); // converts string to date object
now = new Date(); // current date
if (now > date) {
    // in past
} else {
    // in future
}

尝试将输入值转换为a,以便将当前值与脚本中的输入值进行比较

input = document.getElementById("since"); // gets element
value = input.value; // form value (string)
date = new Date(value); // converts string to date object
now = new Date(); // current date
if (now > date) {
    // in past
} else {
    // in future
}

您需要检查两件事。
1)是输入的有效日期,
2)是您想要的范围内的日期。
尝试下面的代码,它将在允许提交之前检查这两个条件

    <html>   
    <head></head>    
    <body>      
    <script>
    function checkDate() {
     var val = new Date(document.forms["frm"]["since"].value);
     var now = new Date();
     if (isNaN(val.getTime()) || (val>now)) {
       alert('invalid date');
       return false;
      }
      return true;
    }
    </script>
       <form name="frm" onsubmit="return checkDate()">
    <ul>
      <li>
        <label>Member Since </label>
        <input id = "since" name="since" size="2" maxlength="6" value="" type="date" required/>
       </li>
       <li>
         <input type="Submit" name="Submit" id="btnsubmit" value="Submit" />
        </li>
    </ul>
  </form>
 </body>
 </html>

函数checkDate(){
var val=新日期(document.forms[“frm”][“自”].value);
var now=新日期();
if(isNaN(val.getTime())| |(val>now)){
警报(“无效日期”);
返回false;
}
返回true;
}
  • 成员自

您需要检查两件事。
1)是输入的有效日期,
2)是您想要的范围内的日期。
尝试下面的代码,它将在允许提交之前检查这两个条件

    <html>   
    <head></head>    
    <body>      
    <script>
    function checkDate() {
     var val = new Date(document.forms["frm"]["since"].value);
     var now = new Date();
     if (isNaN(val.getTime()) || (val>now)) {
       alert('invalid date');
       return false;
      }
      return true;
    }
    </script>
       <form name="frm" onsubmit="return checkDate()">
    <ul>
      <li>
        <label>Member Since </label>
        <input id = "since" name="since" size="2" maxlength="6" value="" type="date" required/>
       </li>
       <li>
         <input type="Submit" name="Submit" id="btnsubmit" value="Submit" />
        </li>
    </ul>
  </form>
 </body>
 </html>

函数checkDate(){
var val=新日期(document.forms[“frm”][“自”].value);
var now=新日期();
if(isNaN(val.getTime())| |(val>now)){
警报(“无效日期”);
返回false;
}
返回true;
}
  • 成员自

在checkDate函数中,从输入字段中检索值。然后创建一个新的Date()对象,该对象设置为您希望确保输入不超过的日期。从这里,您可以对这两个日期进行简单的比较。在checkDate函数中,从输入字段中检索值。然后创建一个新的Date()对象,该对象设置为您希望确保输入不超过的日期。从那里,您可以对这两个日期进行简单的比较。