Come associo un evento ad un elemento creato via AJAX con jQuery?

Per associare un evento ad un elemento creato via AJAX occorre usare la event delegation di jQuery.

Supponiamo che una richiesta AJAX generi il seguente elemento:


<a href="" id="more">...</a>

Possiamo usare la event delegation in questo modo:


$( document ).on( "click", "#more", function( e ) {
	e.preventDefault();
	$( "html, body" ).animate({
		scrollTop: $( "#content" ).offset().top
	}, 500, "linear");
});

In pratica il soggetto dell'evento diventa document ed il secondo parametro del metodo .on() รจ l'elemento generato dinamicamente.

Torna su