Richard Deeming
Когда вы нажимаете на кнопку <a>
в течение определенного дня вы выполняете dayClicked
функция обновления календаря. Но вы не препятствуете действию по умолчанию, которое заключается в переходе к href
, который перезагружает страницу.
Вы могли бы удалить href
, что помешало бы навигации. Но это также повлияло бы на стиль ссылки:
$("#days").append("<td class='day_active'><a onclick='dayClicked(" + month + "," + year + ");'>" + i + "</a></td>");
Или вы могли бы добавить
return false;
после вызова
dayClicked
функция:
$("#days").append("<td class='day_active'><a href='' onclick='dayClicked(" + month + "," + year + ");return false;'>" + i + "</a></td>");
Или же вы можете использовать делегированные события jQuery:
function days(month, year) {
...
$("#days").append("<td class='day_active'><a href='' data-month='" + month + "' data-year='" + year + "'>" + i + "</a></td>");
}
};
$("#days").on("click", ".day_active a", function(evt){
evt.preventDefault();
var month = this.getAttribute("data-month");
var year = this.getAttribute("data-year");
days(month, year);
});