Как запускать функцию каждый раз, когда часть страницы перезагружается

Я делаю приложение на Django и хотел бы запускать функцию каждый раз, когда я перезагружаю календарь. Когда пользователь нажимает на стрелки сбоку календаря, он перезагружает раздел с календарем и показывает новый месяц. Когда пользователь нажимает на один из дней, должно появляться новое содержимое (это делается путем назначения содержимого каждому дню с помощью функции setAttribute("onclick", ...)). Показ контента работает до тех пор, пока я не поменяю месяц. Насколько я понимаю, это происходит потому, что я назначаю функцию только существующим элементам DOM, а не новым. Я пробовал назначать ее новым элементам различными способами, но это так и не сработало. Есть ли какой-нибудь способ сделать это?

Смена месяца осуществляется с помощью функции ajax load.

for (var x=0; x < days.length; x++) {
    days[x].setAttribute("onclick", `setDay(
    "${String(days[x].innerHTML)}",
    "${(month[1].innerHTML)}"
    )
`)}

$('#right').click(function () {
    let mth = $('.month')[1].innerHTML.split(" ")
    let month = parseInt(monthsObj[mth[0]])+1
    let year = parseInt(mth[1])
    if (month == 13) {
        month = 1
        year += 1
        $('#newCal').html('').load(
            "{% url 'calendarChange' monthNumber=4 yearNumber=2022 %}".replace("4", month).replace("2022", year)
        );
        } else {
        $('#newCal').html('').load(
            "{% url 'calendarChange' monthNumber=4 yearNumber=2022 %}".replace("4", month).replace("2022", year)
        );
    }
})

Я попробовал поместить этот for cycle в функцию и поместить его в ajax click. Ajax click работал, а for cycle - нет.

Вернуться на верх