我一直在努力在我的应用中动态渲染部分。我有一个模态创建一个新记录,然后关闭自己。我有一个create.js.erb负责关闭模态并将新记录附加到页面上:
$('#div-id').append('<p>Record was successfully created.</p>');
setTimeout("$('.close').click();", 3000);
$("#another-div").append('<%= escape_javascript(render(partial: "new_record")) %>');
它呈现部分并在我的页面上显示。但是,这个附加的部分有一个链接,应该在单击时打开一个模型,但是在渲染后不能正常工作,我实际上必须重新加载页面并单击此记录按钮才能看到模态。
为了显示这个模态,我有一个骨干视图,它根据它的属性来监听事件:
events:
'click a[open-modal]': 'showModal'
也许它有一些事情可以做到这个骨干视图,但我之前没有做太多骨干+咖啡。
抱歉新手问题。
提前致谢
答案 0 :(得分:0)
我也不熟悉骨干,但根本问题是链接的监听器没有附加到动态添加的页面元素。如果您使用的是jQuery,则可以使用on method来确保新添加的页面元素还附加了侦听器:
$(document).on 'click', '.some_link_class', (event) ->
#Do stuff!