イベントが自動的に読み込まれません。render()メソッドの最後にdelegateEvents()を追加すると、しばらくは機能しました。デリゲートイベントを使用したくないのですが、デリゲートイベントを使用してもイベントが読み込まれません。
DOMはその時点では不明であるため、イベントはバインドされていないと思いますが、それを確認(デバッグ)するにはどうすればよいですか?
意見:
class EditGroup extends BaseView
initialize: ->
@render()
render: ->
html = _.template tpl, @model.toJSON()
@$el.html html
for own key, options of FormConfig[@model.type]
options.key = key
options.value = @model.get key
input = new Input options
input.on 'valuechanged', (key, value) => @model.set key, value
@$('section.'+key).html input.$el
@delegateEvents() # doesn't work
@
DOM:
h2 Edit Group
section.title
section.type
section.members
button.save.btn.btn-primary(onclick="return false") Save changes
タイプとメンバーのセクションには、先行入力があり、レンダリングされたものを選択します(バックボーンビュー)。1つはdelegateEventsなしで機能し、もう1つはで機能します。親ビュー(上に表示)のイベントはまったく機能しません。forループを削除しても違いはありません。