jQuery-datepicker.parseDate на 'mm/y' вызывает недопустимую дату
У меня есть метод проверки, который кажется довольно простым, потому что я использую что-то очень похожее при использовании формата 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
?
1 ответ:
К сожалению, вам нужно предоставить по крайней мере месяц и день для того, чтобы datepicker правильно проанализировал вашу дату. Если вы оставите год, он по умолчанию будет текущим годом, поэтому разбор "06/15 "как" dd/mm " даст вам 2011-06-15. Но если месяц или день опущены, они по умолчанию равны -1 и выдадут недопустимую дату.
Правка:
Если вы просто пытаетесь подтвердить, что пользователь ввел действительный месяц и год, сделайте следующее:
$.datepicker.parseDate('dd/mm/y', "01/" + dateField, null);