我有一个非常轻量级的单页应用程序,带有一个通用页眉+页脚和一个动态中间件。在这个中间部分的一个视图中是一个动态表格,其中最后一列有一个"确认"按钮在里面。如果这是第一个加载的视图,单击该按钮可创建正确的函数调用。如果在第一次整页加载后换了它,我的核心javascript中的函数就不会被调用。
我使用以下内容在页面加载后注入HTML模板
$('#view2_button').click(function() {
$.get("/view2", function(data, status) {
document.getElementById("mainview").innerHTML = data;
});
});
这是"确认"的javascript。部分视图中的动态表格中的按钮" view2。"同样,如果" view2"是加载应用程序时呈现的第一个局部视图。
$('td.confirm').click(function() {
toggleOverlay();
const confirmId = this.id.split('_')[1];
if(confirm( 'By clicking OK, you are confirming:\n'
//...
//...
});
这是嵌入的唯一解决方案" OnClick()"进入按钮div本身,还是有一种正确的方法可以将代码与标记分开,而不必依赖像Angular,React或Vue这样重的东西?
答案 0 :(得分:2)
使用委派的事件处理程序。
$( document ).on( 'click', 'td.confirm', function() {