JavaScript MM / DD / YYYY日期验证

时间:2016-10-03 11:04:53

标签: javascript

有人可以帮助以下吗?

我在下面使用Regex表达式验证来自"MM/DD/YYYY"的{​​{1}},但我需要验证年份是从1900开始,日期应该是有效的日历日期。

正则表达式

<a href="http://stackoverflow.com/questions/15491894/regex-to-validate-date-format-dd-mm-yyyy/31613437#31613437?newreg=51e1ed3c1b2d468fa7a1cab86a40eb51">clickhere</a>

2 个答案:

答案 0 :(得分:1)

我建议使用时刻js进行日期验证而不是正则表达式,他们对你所追求的内容有很好的支持:

&#13;
&#13;
var date1 = "25/01/1899";
var date2 = "25/01/1900";

function validateDate(date, format) {
	if (!format) format = "DD/MM/YYYY";
  var m = moment(date, format);
  return m.isValid() && m.isAfter("1900-01-01");
}

console.log(validateDate(date1));
console.log(validateDate(date2));
&#13;
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.1/moment-with-locales.min.js"></script>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

也许您可以尝试检查日期是否为有效日期(您可以在此处找到一些提示:Detecting an "invalid date" Date instance in JavaScript

然后,如果日期有效,请检查它是否大于1900。