我有表格元素
<table class="ActionMenu" id="tblActionMenu" cellpadding="3" cellspacing="3" >
约翰
$('.ActionMenu tr').click(function (e) {
alert("abcd");
});
这很有效。
现在使用javascript我添加了具有相同class =“ActionMenu”的表,但是点击tr它不起作用。
如何获取动态创建表上的Message on事件表
答案 0 :(得分:3)
可能在定义函数时,新表还不存在。因此,假设您正在使用最新的jQuery版本(1.7.x),请使用事件委派并在公共父级上捕获事件(例如body
元素)
$('body').on("click", ".ActionMenu tr", function (e) {
alert("abcd");
});
答案 1 :(得分:0)
你必须使用“实时”功能......如果你使用“委托”功能,那就更好了。
它的工作原理如下:
$('.someClass').live('click',function(){}); //adds 'click evt' to every future .someClass inside the DOM
$('#someID').delegate('.someClass','click',function(){}); //adds 'click evt' to every future .someClass inside #someID
搜索jQuery api以获取更多信息,或者如果您需要更多帮助,请告诉我们。祝你好运!
答案 2 :(得分:0)
$('#tblActionMenu').on("click", "tr", function(){
//do something
});