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 2

1 ответ:

К сожалению, вам нужно предоставить по крайней мере месяц и день для того, чтобы datepicker правильно проанализировал вашу дату. Если вы оставите год, он по умолчанию будет текущим годом, поэтому разбор "06/15 "как" dd/mm " даст вам 2011-06-15. Но если месяц или день опущены, они по умолчанию равны -1 и выдадут недопустимую дату.

Правка:

Если вы просто пытаетесь подтвердить, что пользователь ввел действительный месяц и год, сделайте следующее:

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