假设有两个文本框,一个用于输入日期,另一个用于及时输入。以下是一个例子:
<p><strong>Date:</strong> <input type="text" id="datetxt"></p>
Example of how date is displayed: 25-05-1995
<p><strong>Time:</strong> <input type="text" id="timetxt"></p>
Example of how time is displayed: 14:25
有人可以建议javascript中的方式来比较从文本框到当前日期和时间的日期和时间的值,所以如果当前日期和时间超过在文本框中输入的日期和时间,那么它应该显示和提醒?
答案 0 :(得分:1)
试试这个
var dateParts = document.getElementById("datetxt").value.split("-");
var timeParts = document.getElementById("timetxt").value.split(":");
var valueDate = new Date(dateParts[2], (dateParts[1] - 1) ,dateParts[0], timeParts[0], timeParts[1]);
if( (new Date).getTime() > valueDate .getTime() )
{
alert("passed");
}
答案 1 :(得分:0)
您需要将日期字符串按到compatible日期格式:
//datetxt textbox value, split on dashes
var date = "25-05-1995".split("-"),
//timetxt textbox value
time = "14:25",
//put it into format: YYYY-MM-DDThh:mm and creates a date object from it
dateObj = new Date(date[2] + '-' + date[1] + '-' + date[0] + 'T' + time);
//if today is greater than we have passed that DateTime
if(new Date() > dateObj) {
alert("After entered date");
} else {
alert("Not passed yet!");
}
工作示例:jsFiddle