2013-07-13 4 views
0

Привет, я хочу отображать сообщение, когда мы перемещаемся по календарному управлению в Kendo. Но мое условие - всякий раз, когда мы вступаем в новый год, я должен отображать сообщение.Kendo calendar year change event

Ex: текущий месяц - июль - 2013 г., когда я перехожу в следующий месяц Aug - 2013 -> В этом случае я не хочу отображать сообщение.

Если мы находимся в декабре 2013 года, когда я нажимаю следующую навигационную кнопку -> В этом случае я хотел отобразить сообщение, подобное введенному в новом году.

Тот же случай для предыдущей навигации также. Когда мы находимся в январе 2013 года, если я нажму предыдущую кнопку, он войдет в Dec - 2012 -> В этом случае я также хотел отобразить сообщение.

Есть ли способ сделать это?

+0

Не могли бы вы сопровождать это с какой-то код или фрагмент кода в jsfiddle, если это возможно. Ваша проблема может быть решена намного проще. – dcodesmith

+0

На самом деле я не понимаю, с чего начать .. calendar.bind ("navigate", function() { }); – jestges

ответ

1

Попробуйте определения navigate обработчика как:

navigate: function() { 
    var cur = this._current; 
    var prev = this._previous; 
    if (prev && cur && prev.getFullYear() !== cur.getFullYear()) { 
     alert("year change"); 
    } 
    this._previous = this._current; 
} 

Что я могу сделать, это получить текущую дату (_current), который является ссылкой дату в текущем виде календаря, а затем получить его год и сравнить это с предыдущей датой.

Кроме того, поскольку в календаре нет previous даты, я сохраняю его для использования в следующем навигационном событии.

Пример здесь: http://jsfiddle.net/OnaBai/jf2XK/

+0

Спасибо .. он работает отлично :) – jestges