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

Highlight a row on table which is filled dynamically by assync resquest data

本文关键字:动态 数据 填充 请求 assync 显示      更新时间:2023-09-26

我必须用assync请求(JSON格式)接收数据的行更新一个表。我做得很好(用接收到的数据动态地创建行)。现在,我正在尝试在这些行中设置一些事件,例如当用户将鼠标悬停在上面时高亮显示它们,以及当用户单击某一行时在另一个div中显示该行的特定信息

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

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

在没有看到代码的情况下,不可能给出确切的答案,但我猜您是在创建事件之前将其绑定到元素。这在JavaScript程序员中是一个常见的陷阱。

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

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


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