定义JavaScript函数:
function ParseDate(s) { // 将字串解析成日期值
var dv, reg = /^\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d$/gi;
if (!reg.test(s)) {
window.alert("日期值格式错误!");
return null;
}
else {
dv = new Date(Date.parse(s.replace(/-/g, "/")));
/* 比较日期值的各部分是否相同, 防止输入错误日期值, 如2013-08-33这种/ */
if (dv.getFullYear() != eval(s.substring(0, 4)) || dv.getMonth() + 1 != eval(s.substring(5, 7)) || dv.getDate() != eval(s.substring(8, 10))
|| dv.getHours() != eval(s.substring(11, 13)) || dv.getMinutes() != eval(s.substring(14, 16)) || dv.getSeconds() != eval(s.substring(17, 19))
) {
window.alert("日期值错误!");
return null;
}
}
return dv;
}
调用示例:
var datNow = new Date(), dateValue = ParseDate("2013-08-23 13:35:12"); // 要自己修改成合适的赋值
if (dateValue != null) {
if (dateValue < datNow) {
window.alert("在当前日期之前!");
}
else {
// 符合条件, 继续处理
window.alert("您输入正确的日期!");
}
}
何必要这样搞呢?既然时间要求是当前时间,那就不要让他填写了,直接系统自己生成就行了,省得他填错,也不用再做检查,多好。