经过大量的阅读帖子和摆弄后,我认为这是为了将一个双击'处理程序'附加到我的jquery数据表的每一行:
$('#myTable').find('tr').dblclick( function(e){
var ref = $(this).find('td:first').text();
someThingToDoWithTextFromFirstCell(ref);
});
不幸的是,这似乎只适用于第一页上的行。我尝试做这样的事情作为一种解决方法(在分页时基本上做同样的事情):
$('#myTable').on('page', function () {
$('#myTable').find('tr').dblclick( function(e){
var ref = $(this).find('td:first').text();
someThingToDoWithTextFromFirstCell(ref);
});
} );
然而,当它发射时,没有找到tr,所以没有任何反应。我假设事件在数据表有新行之前触发了吗?
有谁知道如何才能让它发挥作用?
提前感谢您的时间。
这是一个JS小提琴的例子,尼古拉。谢谢你的时间。双击一行并获得警报,单击“下一步”并双击一行并且不会收到警报。 JS Fiddle example
这是您可以为无效的解决方法添加的内容:
$('#example').on('page', function () {
$('#example').find('tr').dblclick( function(e){
var ref = $(this).find('td:first').text();
alert(ref);
});
} );
答案 0 :(得分:1)
您可以找到答案here。
因此,对于动态创建的元素,您应该使用:
$(document).on("dblclick", "#myTable tr", function () {
//code here
});