我有一个看似非常简单的验证方法,因为我在使用格式mm/dd/yy
时使用的东西非常相似,但是当我使用mm/y
时......我的日期一直无效。
这是我的验证:
function validateDate(dateField) {
try{
$.datepicker.parseDate('mm/y', dateField, null);
}
catch(error){
alert(error);
}
}
如果我传递05/11
这样的日期...这个逻辑抱怨日期无效。如果我将格式更改为mm/dd/yy
并输入05/11/2011
...则表示该格式有效。
我在尝试验证mm/y
模式时是否遗漏了某些内容?
答案 0 :(得分:9)
不幸的是,您需要为datepicker提供至少一个月的日期才能正确解析日期。如果您将年份退出,则默认为当前年份,因此将“06/15”解析为“dd / mm”将为您提供2011-06-15。但是如果省略了月份或日期,它们默认为-1并且将产生无效日期。
编辑:
如果您只是想确认用户输入了有效的月份和年份,请执行以下操作:
$.datepicker.parseDate('dd/mm/y', "01/" + dateField, null);