Я создаю приложение в Backbone.js, у которого есть родительское и множественное дочерние представления. Представления child содержат ссылки, которые они прослушивают и выполняют функцию.
Родитель хранит список всех представлений детей. В функции рендеринга после завершения вычисления собственного html он выполняет следующие действия:
$(this.el).html(html);
for (var i = 0; i < this.views.length; i++){
$('.children', this.el).append(this.views[i].render().el);
}
ОТВЕТ: Проблема заключалась в том, что я создавал ссылку во время рендеринга. То есть на первом рендере (который был вызван из init) событие успешно привязано к ссылке. Однако, поскольку все последующие вызовы рендеринга воссоздают весь элемент, в новой ссылке не было привязанного к нему обработчика. Это было решено с помощью решения @Tom Tu добавления this.delegateEvents()
в рендеринг