2012-08-25 52 views
1

文本输入包含德语格式日期15.09.2012 我只是使用$('#wr_event_date').val()来查询输入字段中的值。Javascript:根据当前日期检查格式化的日期值?

我想知道我可以如何匹配那个日期再次“今天”?

var eventDate = $('#wr_event_date').val(); 

    // if eventDate is older than today as in "is over" doSomething(); 

所以基本上我想检查EVENTDATE比目前老,如果是的话我想DoSomething的();

想法?先谢谢你。

+0

我不会依赖客户端来配置适当的日期。 – Anders

回答

1

不幸的是,你必须自己解析日期。然后,取当前日期new Date(),重置时间部分,并比较这两个日期:

var s = $('#wr_event_date').val().split("."); 
var eventDate = new Date(s[2], s[1] - 1, s[0]); 

var today = new Date(); 
today.setHours(0, 0, 0, 0); // reset time 

if (eventDate.getTime() - today.getTime() < 0) { // event date is older than today 
    doSomething(); 
} 

DEMO

0

如果您可以使用第三方库,那么moment.js提供了解析日期字符串和操作日期的函数。

0
var parts = '15.09.2012'.split('.') 
var date = Date.parse(parts[1], parts[0] - 1, parts[2]); 

if (date - new Date().getTime() > 24 * 60 * 60 * 1000) ... 
​