JQuery плагин от Kevin Luck для отображения календаря с интервалом дат и выделением пользовательских дней - PullRequest
0 голосов
/ 18 октября 2011

У меня есть вопрос о плагине выбора даты JQuery Кевина Лака.

Можно ли сделать календарь из выбранная дата (например, с 01.01.1990 по 01.01.2015)? И я хочу выделить пользовательские дни (установить css class .selected). Например, чтобы выбрать эти дни:

01/06/1990 | 09.02.1995 | 03.10.2005 | 01.11.2007 | 06.07.2010 |

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

    $(function(){

        var testCallback = function($td,thisDate, year, month,day)
        {
            // some implementation here


            return true;
        }


        $('#calendar')
            .renderCalendar({renderCallback:testCallback})          
            .datePicker(
                {   
                    inline:true,
                    selectMultiple:false,
                    startDate:'01/01/1990'
                })              
            .bind(
            'dateSelected',
            function(e, selectedDate, $td)
            {
                date = selectedDate.asString();

                date = date.split(/\//);

                getStuffByAjax(date[2],date[1],date[0]);
            }
        );

});

function getStuffByAjax(year,month,day){
    // some implementation here

    return true;        
}

Если я использую функцию renderCallback, я получаю календарь с только один месяц в году.

Есть идеи?

Буду признателен за вашу помощь.

1 Ответ

0 голосов
/ 19 октября 2011

Я отвечу на мой вопрос.Поэтому все, что мне нужно было сделать, это поместить функцию renderCallBack в метод datePicker:

// JavaScript Document

$(function(){               
        $('#calendar')      
            .datePicker(
                {   
                    inline:true,
                    selectMultiple:false,
                    startDate:'01/01/1990',
                    renderCallback:function($td, thisDate, month, year)
                    {

                        if(thisDate.getDate() == 10){
                            $td.addClass('selected');   
                        }



                    }
                })              
            .bind(
            'dateSelected',
            function(e, selectedDate, $td)
            {
                date = selectedDate.asString();

                date = date.split(/\//);

                getStuffByAjax(date[2],date[1],date[0]);
            }
        );

});

function getStuffByAjax(year,month,day){
    // some implementation here

    return true;        
}

Теперь все работает так, как я хотел.Приветствия.

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