jQuery – ‘mm / y’上的datepicker.parseDate导致无效日期

我有一个看似非常简单的validation方法因为我在使用格式mm/dd/yy时使用了非常相似的东西,但是当我使用mm/y ……我一直得到一个无效的日期。

这是我的validation:

 function validateDate(dateField) { try{ $.datepicker.parseDate('mm/y', dateField, null); } catch(error){ alert(error); } } 

如果我传递像05/11这样的日期…这个逻辑抱怨日期无效。 如果我将格式更改为mm/dd/yy并输入05/11/2011 …则说它有效。

在尝试validationmm/y模式时,我是否遗漏了一些东西?

不幸的是,您需要为datepicker提供至少一个月的日期才能正确解析日期。 如果您将年份退出,则默认为当前年份,因此将“06/15”解析为“dd / mm”将为您提供2011-06-15。 但如果省略月份或日期,则默认为-1并将生成无效日期。

编辑:

如果您只是想确认用户输入了有效的月份和年份,请执行以下操作:

 $.datepicker.parseDate('dd/mm/y', "01/" + dateField, null);