突出显示由异步请求数据动态填充的表上的行

时间:2014-09-20 13:05:33

标签: javascript jquery css spring-mvc tiles2

我必须使用具有由同步请求(JSON格式)接收的数据的行来更新表。我很好地完成了这项任务(用动态创建带有接收数据的行)。现在我尝试在这些行中设置一些事件,例如在用户将鼠标移过时突出显示它们,并在用户单击时显示另一个div中的行的特定信息。

我尝试了很多方法,但没有任何反应。这些活动根本不起作用。我使用的是Spring Framework mvc,视图层基于Tiles模板(header.jspx,menu.jspx,footer.jspx等)。

我必须将jquery代码放在另一个地方?有人可以帮忙解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

如果没有看到代码,就无法给出确切的答案,但我猜测你在创建元素之前将事件绑定到元素上。这是JavaScript程序员中常见的陷阱。

在创建元素之后,您必须绑定事件侦听器(例如:.addEventListener()或jQuery' s .click()。在JavaScript代码中,在从异步数据创建HTML元素后添加它们。

答案 1 :(得分:0)

非常感谢@thameera。这正是我所做的。它工作得很好。我还找到了另一种方法。我使用jQuery方法.delegate为不存在的元素分配一个动作,如下面的代码所示:


$(document).ready(function() {  
    $("#table tbody").delegate("tr", "click", function() {
     alert("Click!");
    });
 });