1) Если используется асинхронный вызов в следующей строке:
if(i == 1) RCalendar.GetCalendarEvents(agentid, year, month, i,
function (result) {
setCalendarEvents(year, month, i, result)
});
Попробуйте изменить, например, так:
if(i == 1) RCalendar.GetCalendarEvents(agentid, year, month, i,
setCalendarEvents.bind(null, year, month, i));
Когда setCalendarEvents
вызывается после завершения асинхронного запроса, функция setCalendarEvents получает 4 параметра (год, месяц, i - без изменений) и result
(последний параметр).
2) Проверьте следующие строки:
"<div id=\"divday" + year + "" + month + "" + i + ...
var daydiv = document.getElementById("divday" + y + m + d);
Для года: 2012, месяца: 1, дня: 12 - id равно divday2012112
Для года: 2012, месяца: 11, дня: 2 - id равно divday2012112 (аналогично предыдущему div)