JQuery UI Datepicker как отображение нескольких дат - PullRequest
4 голосов
/ 14 августа 2011

Я использовал JPuery UI DatePicker в прошлом и очень доволен им.Я ищу способ показать пользователю несколько дат в будущем.Я не хочу, чтобы пользователь мог выбирать даты, я просто хочу, чтобы они исправляли их во время выполнения.

Есть ли простой способ сделать это возможным?

Ответы [ 2 ]

11 голосов
/ 15 августа 2011

Вы можете сделать это с событием beforeShowDay.

// list of dates to highlight
var dates = [
    [2011, 8, 1],
    [2011, 8, 9],
    [2011, 8, 25]
];

$('#datepicker').datepicker({
    beforeShowDay: function (date){
        var year = date.getFullYear(), month = date.getMonth(), day = date.getDate();

        // see if the current date should be highlighted
        for (var i=0; i < dates.length; ++i)
            if (year == dates[i][0] && month == dates[i][1] - 1 &&  day == dates[i][2])
            return [false, 'ui-state-highlight ui-state-active'];

        return [false];
    }
});

См. Пример: http://jsfiddle.net/william/VzZYU/

0 голосов
/ 14 августа 2011

Я не верю, что функциональность для этого встроена в средство выбора даты.Так что, кажется, нет простого способа сделать то, что вы просите.

Однако вы могли бы достичь этого, применив класс ui-datepicker-current-day к нескольким датам.Вам нужно будет сделать это вручную, найдя теги для выбранных вами дат.

Чтобы пользователь не мог выбрать дату, вы можете использовать «отключить» метод выбора даты илиопция «отключена» .Тем не менее, это приглушит календарь.Другой возможный подход - обработать событие onSelect , переназначить класс css на несколько дат и удалить его из даты, выбранной пользователем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...