-2

可能重复:
正则表达式以验证 javascript 中 mm/dd/yyyy 格式的短日期和长日期

我正在使用正则表达式/^\d{1,2}[\/-]\d{1,2}[\/-]\d{4}$/在 javascript 中验证 MM/DD/YYYY。

但目前它将验证日期,如 13/22/2012 、 10/45/2012。我该如何纠正它。

4

2 回答 2

1

删除正则表达式并简单地使用split()function

通过将字符串拆分为子字符串,将 String 对象拆分为字符串数组。

一旦您分别拥有日期的每个部分,您就可以使用简单的条件语句对其进行验证。

var dateStr = "MM/DD/YYYY";
var dateParts = str.split('/');  // ["MM", "DD", "YYYY"]

请记住,不应信任在客户端使用 JavaScript 完成的任何验证!任何用户都可以进入并操作您的 JavaScript。您也应该始终在服务器端实现验证。通常客户端验证更多的是用户体验......

于 2013-01-29T20:09:20.847 回答
0

我建议使用库来实现这一点,不要重新发明轮子。其中最流行的是 jquery UI datepicker,它还提供了一个不错的弹出日历来选择日期。

于 2013-01-29T20:08:12.537 回答