Проблема в том, что когда срабатывает событие onChangeMonthYear
, новая таблица календаря еще не создана. Таким образом, он добавляет текст, но затем весь контент заменяется новой таблицей.
Используйте время ожидания для добавления вашего текста, это обеспечит повторное создание контента плагином перед добавлением.
var appendTimeout;
function appendText(text) {
clearTimeout(appendTimeout);
appendTimeout= setTimeout(function() {
$('#ui-datepicker-div').append('<div>' + text + '</div>');
}, 50);
}
$("#datepicker").datepicker({
beforeShow: function() {
appendText('initialAppendedText');
},
onChangeMonthYear: function(year, month, inst) {
appendText('whenMonthIsChanged');
}
});
Я установил тайм-аут 10 мс, но вы можете немного увеличить это значение.
Рабочий пример для jsfiddle