带有当前日期验证的时间戳

时间:2018-03-03 17:48:15

标签: javascript html date time

我想要将javascript添加到时间字段,以便它不会占用当前日期的当前时间或之前的时间。它也不应该比当前日期的当前时间多4小时...例如:如果日期是2018-03-03,时间是13:00:00,则当前日期的时间不应少于17:00:00 ..时间格式为hh:mm:ss。我将以yyyy-mm-dd格式在另一个字段中显示日期。 这是我试过的代码。请告诉我可以改变什么。

function currtime()
var tm = document.getElementById("ptime");
var pd = document.getElementById("pdate");

var now =new date();
var select = new Date(now.getFullYear(),now.getMonth(),now.getDate());
var specific = new Date(pd);

if  ((specific == select) && (tm <= now)){
alert("incorrect time for today");
return false;
}

else {
return true;
}

1 个答案:

答案 0 :(得分:0)

您可以使用spread syntax在一行中创建指定日期,然后使用关系运算符比较日期:

function currtime() {
    var tm = document.getElementById("ptime").value.split('-');
    var pd = document.getElementById("pdate").value;

    var specified = new Date(tm[0], tm[1] - 1, tm[2], ...tm.split(':'));
    var select = new Date();

    if (specified < select || specified > select.setHours(select.getHours() + 4)){
        alert("incorrect time for today");
        return false;
    } else {
        return true;
    }   
}