如何在不包括当天的情况下检查过去的日期是否过去?

时间:2015-02-03 01:48:54

标签: javascript jquery date datetime

所以我有一个checkDate()函数,用于验证在提交之前在Web表单上输入的日期不是过去的。问题是,如果输入的日期是今天的日期,此函数也会返回错误。我假设这与日期时间格式为DD:MM:YYYY HH:MM:SS.sss有关,然后转换为他们的纪元值,但我不确定如何验证输入的日期今天不是在检查它不是过去的日期。

我在下面发布了我的checkDate()功能:

请注意:我们正在检查的日期字符串的文本框名为txtNeededBy

function checkDate() {

    var date = new Date($("#txtNeededBy").val());
    ValidateDate = false;

    if (Date.parse(date) < Date.now()) {
        sb.append("<li>Needed by date must not be in the past.</li>");
        $("#txtNeededBy").addClass("input_error");
        ValidateDate = true;
        if (sb.toString().length > 0) {
            $(".Errors").html(sb.toString());
            $(".Errors").show();
            return false;
        }
    } else {
        $("#txtNeededBy").removeClass("input_error");
    }

    if (ValidateDate === true) {
        return false;
    }
}

1 个答案:

答案 0 :(得分:0)

我强烈建议使用像Date.js

这样的库

该库有一个.is()方法,允许您非常轻松地进行这些类型的比较。不要重新发明轮子:)