如何在JavaScript中比较yy-dd-mm格式的两个日期?

如何在JavaScript中比较yy-dd-mm格式的两个日期?,javascript,html,Javascript,Html,我有一个日期类型的表单元素: <input type="date" class="form-control" name="InputDOB" id="DOB" placeholder="DOB" onblur="dateValidate()" required> JavaScript代码如下所示: function dateValidate(){ var date=new Date(); var pass1 = document.getElementByI

我有一个日期类型的表单元素:

<input type="date" class="form-control" name="InputDOB" id="DOB"
   placeholder="DOB" onblur="dateValidate()" required>

JavaScript代码如下所示:

function dateValidate(){
    var date=new Date();
    var pass1 = document.getElementById("DOB");
    alert(pass1.value);
    var date = new Date();

    today=date.getFullYear()+'-'+(date.getMonth() + 1)+'-'+date.getDate(); 


    if(pass1.value<today){
      alert("date is correct ");
    }
}
函数dateValidate(){
变量日期=新日期();
var pass1=document.getElementById(“DOB”);
警报(pass1.value);
变量日期=新日期();
今天=date.getFullYear()+'-'+(date.getMonth()+1)+'-'+date.getDate();

if(pass1.value在处理日期时,我总是在JavaScript中使用
moment.js
。它减轻了在JavaScript中处理日期时的大部分(如果不是全部的话)困难,是一个出色的库


差分方法可以满足您的需要,如果没有,我相信您可以在API中找到解决方案。

您今天不需要
,只需将
if
更改为

if(new Date(pass1.value)< date){
 alert("date is correct ");
}

//OR

if(new Date(pass1.value)< new Date()){
 alert("date is correct ");
}
if(新日期(pass1.value)
根据您发布的代码,您可以这样做:

html:


application.js文件,您应该将其加载到HTML文件中,我也在使用JQuery来实现这一点,所以您也应该加载它

$(document).ready(function () {
    $("#DOB").on("blur", function () {
        var date=new Date();
        var pass1 = document.getElementById("DOB");
        alert(pass1.value);
        today=date.getFullYear()+'-'+(date.getMonth() + 1)+'-'+date.getDate();
        alert(today);


        if(pass1.value<today){
            alert("date is correct ");
        }
    })
});
$(文档).ready(函数(){
$(“#DOB”)。关于(“模糊”,函数(){
变量日期=新日期();
var pass1=document.getElementById(“DOB”);
警报(pass1.value);
今天=date.getFullYear()+'-'+(date.getMonth()+1)+'-'+date.getDate();
警报(今日);

if(pass1.value您需要使用
getTime();
比较两个日期,如

function dateValidate(){
    var input = document.getElementById("DOB");
    alert(input.value);
    var inputDate = new Date(input.value).getTime();
    var today = new Date().getTime();
    if(inputDate<today){
      alert("date is correct");
    }
}  
函数dateValidate(){
var输入=document.getElementById(“DOB”);
警报(输入值);
var inputDate=新日期(input.value).getTime();
var today=new Date().getTime();

如果(inputDateI不建议使用moment.js进行比较,请参阅Sourabh使用Date()的响应
function dateValidate(){
    var input = document.getElementById("DOB");
    alert(input.value);
    var inputDate = new Date(input.value).getTime();
    var today = new Date().getTime();
    if(inputDate<today){
      alert("date is correct");
    }
}