Javascript 将事件绑定到AJAX添加的元素

Javascript 将事件绑定到AJAX添加的元素,javascript,jquery,ajax,Javascript,Jquery,Ajax,我知道以前有人问过这个问题,但不幸的是,这些问题似乎并没有解决我的问题。 我有一个,我必须将dblclick事件添加到每一个事件中,但我也在使用AJAX(页面加载后)向表中添加行 我已经让它工作,但已张贴了2个代码,一个工作,另一个没有 a) 此代码适用于我: $(document).on("dblclick","td",function(){ //THIS WORKS FOR ELEMNTS ADDED AFTER PAGE LOAD }); b) 我之前尝试的代码无效: $("td

我知道以前有人问过这个问题,但不幸的是,这些问题似乎并没有解决我的问题。 我有一个
,我必须将
dblclick
事件添加到每一个事件中,但我也在使用AJAX(页面加载后)向表中添加行

我已经让它工作,但已张贴了2个代码,一个工作,另一个没有

a) 此代码适用于我:

$(document).on("dblclick","td",function(){ 
   //THIS WORKS FOR ELEMNTS ADDED AFTER PAGE LOAD
});
b) 我之前尝试的代码无效:

$("td").on("dblclick","td",function(){ 
   //THIS DIDN'T FOR ELEMNTS ADDED AFTER PAGE LOAD

});
甚至尝试向新添加的
中添加一个类,并在第二个参数中传递它,但它似乎不起作用

请大家解释一下,第二种情况有什么问题

请大家解释一下,第二种情况有什么问题

您的意思是“甚至尝试将类添加到新添加的
”,这意味着您正在创建新的
元素

事件处理程序必须绑定到动态元素的现有“静态”祖先

您的处理程序,
$(“td”)。在(“dblclick”,“td”,function(){})
上没有多大意义。它会监听其他表格单元格中表格单元格上的点击


查看jQuery教程以了解有关事件委派的更多信息。

但是第二个参数用于将来添加的元素,对吗?是的。。。。这就是为什么在这两种情况下使用相同的选择器没有多大意义的原因。King所以我曾经将它绑定到
并使用
$(“tbody”)。在(“dblclick”,“td”,function(){})上,它会起作用。@varun:是的,在a中的每一个选择器上。@FelixKling谢谢你,伙计,我想我丢失的是现有的祖先非常相关: