在我正在进行的项目中,我需要验证输入的日期 <input type="date">
使用Safari 4/5(在Mac OSX上),Javascript无法解析格式的日期YYYY-MM-DD,NaN而是返回而不是预期的纪元时间戳.
我正在使用以下技术在提交表单之前验证字段:
//value = '2010-06-21'
var stamp = Date.parse(value);
if (isNaN(stamp)) {
//notify user
} else {
value = new Date(stamp).format_mysql();
}
Run Code Online (Sandbox Code Playgroud)
format_mysql()原型函数在哪里将日期(正确)格式化为MySQL日期时间格式(YYYY-MM-DD).
将-'s 替换为' /(YYYY/MM/DD)会产生"正确"的时间戳.
我应该注意,该字段应该接受任何日期格式,而不仅仅是YYYY-MM-DD,虽然我想,但我不能使用像Date.js这样的库
我该如何解决这个问题,还是有更好的方法来解析/验证日期?