Как установить minDate/maxDate для jQueryUI Datepicker с помощью строки?

jQueryUI Datepicker документация утверждает, что параметр minDate может быть установлен с использованием "строки в текущем dateFormat". Поэтому я инициализировал datepickers следующее:

$("input.date").datepicker({ minDate: "01/01/2010", maxDate: "12/31/2010" });

Однако, это приводит к тому, что мой датпикер имеет диапазон выбора, который изменяется с 11/06/2015 по 12/17/2015.

Я проверил текущий формат даты и его mm/dd/yy, который должен означать 2 цифры для месяца, 2 для дня и 4 для года, разделенных косой чертой. Я также попытался включить dateFormat: "mm/dd/yy" в инструкцию инициализации.

Я также проверил значения для minDate и maxDate после этого, и они установлены на значения, которые я хочу: 01/01/2010 и 12/31/2010.

Я хочу иметь возможность установить min/maxDate со строками, потому что мне передают эти значения в виде строк из другого места. Может быть, кто-то знает, почему это происходит и как решить это, или обходным путем для достижения этого, perphaps, изменяющие формат строк даты или что-то еще?

Спасибо

EDIT: Использование: jQuery v1.3.2 и jQuery UI v1.7.2

Ответ 1

В конце концов мне пришлось использовать что-то вроде этого, так как датапикер v1.7 не имеет проблем с датами:

$.getJSON("/GetMinMaxDates/", function(dates) {
    var DateLimits = {min:null, max:null};

    DateLimits.min = new Date(Date.parse(dates.min));
    DateLimits.max = new Date(Date.parse(dates.max));

    $("input.date").datepicker({ dateFormat: "mm/dd/yy", minDate: DateLimits.min, maxDate: DateLimits.max });
});

Ответ 2

Появляется "ошибка" в 1.3.2 с 1.7.2. В 1.4.2 с 1.8.1 все в порядке.

Ответ 3

Я нашел, что ваш последний метод лучше всего подходит для IE7/8. IE возвращает NaN в строковых функциях Date; как только я разобрался с числами, проблема исчезла.