Estoy creando una aplicación en Django y me gustaría iniciar la función cada vez que recargo el calendario. Cuando el usuario hace clic en las flechas al costado del calendario, vuelve a cargar la división con el calendario y muestra el mes nuevo. Cuando el usuario hace clic en uno de los días, debe aparecer contenido nuevo (esto se hace asignando contenido a cada día usando la función setAttribute("onclick", ...)). El contenido que muestra funciona hasta que cambie de mes. Por lo que entiendo, es porque asigno funciones solo a los elementos DOM existentes y no a los nuevos. Intenté asignarlo a nuevos elementos de varias maneras, pero nunca funcionó. ¿Hay alguna forma de hacerlo?
El cambio de mes se realiza mediante la función de carga ajax.
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) ); } })Intenté poner eso en función de ciclo y ponerlo en ajax click. Luego, el clic de Ajax funcionó, pero no para el ciclo.