0

//我正在检查给定时间是否与当前机器时间相比较。//即使时间开始时间和结束时间已经过去,我也没有收到警报。

 var currDate  = new Date();
    var startDate = setTime("09:30:00");
    var endDate   = setTime("10:15:00");

// 给定一个格式为“hh:mm:ss”的输入字符串,返回一个日期对象, // 与今天相同,但给定时间。

function setTime(timeStr) {
    var dateObj = new Date();          // assuming date is today
    var timeArr = timeStr.split(':');  // to access hour/minute/second
    var hour    = timeArr[0]; 
    var minute  = timeArr[1];
    var second  = timeArr[2];

    dateObj.setHours(hour);
    dateObj.setMinutes(minute);
    dateObj.setSeconds(second);
    return dateObj;
}

// 现在我们可以减去它们(减去两个 Date 对象可以得到它们 // 以毫秒为单位的差异)

if (currDate - startDate < 0 || currDate - endDate < 0) {
    alert("Unfortunately, you can't schedule a meeting in the past. 
             We apologize for the inconvenience.");
}
4

1 回答 1

0

为了检查给定时间是否已过或不与当前机器时间相比,请更改如下所述的条件。

if (currDate > startDate && currDate  < endDate) 
{
    alert("Unfortunately, you can't schedule a meeting in the past. We apologize for the inconvenience.");
}

如果当前时间在开始时间和结束时间之间,它将显示警报。

让我知道它是否有效。

于 2012-07-05T11:45:04.517 回答