Если вы хотите, чтобы обработчик клика работал для элемента, который динамически загружается, вы устанавливаете обработчик событий на родительском объекте (который не загружается динамически) и присваивает ему селектор, который соответствует вашему динамическому объекту следующим образом:
$('#parent').on("click", "#child", function() {});
Обработчик события будет прикреплен к объекту #parent
, и в любое время, когда событие клика дойдет до него, которое возникло на #child
, оно запустит ваш обработчик кликов. Это называется делегированной обработкой событий (обработка события делегирована родительскому объекту).
Это делается так, потому что вы можете присоединить событие к объекту #parent
, даже если объект #child
существует, но когда он будет существовать позже и будет нажат, событие щелчка будет пузыриться до объекта #parent
, он увидит, что он возник из #child
, и есть обработчик события для щелчка на #child
и запустите ваше событие.