我有一个应用程序,点击一个链接会显示一个模态。在模态中是一种形式。我需要监控该表格的提交。
我在我的JS中附加了一个点击处理程序,如下所示:
$('.vex-dialog-form :submit').click (event) ->
alert "hi"
警告并未触发,我相信它是因为我需要为该模态加载附加某种事件处理程序,然后将提交事件放入其中。
有关如何解决这个问题的任何建议吗?
答案 0 :(得分:2)
动态添加DOM需要event delegation
。使用.on()
:
$('.vex-dialog-form').on('click',':submit',function(){
alert("hi");
});
如果父动态.vex-dialog-form
也是动态添加的,请使用:
$(document).on('click','.vex-dialog-form :submit',function(){
alert("hi");
});
答案 1 :(得分:2)
尝试这种方式:
$(document).on('click', '.vex-dialog-form :submit', function(){
alert('hi');
});
在这种情况下document
正在等待点击,点击后,jQuery会发现你的提交按钮是否被点击