3

我目前正在使用该功能将内容动态.load()加载到容器中。div正在加载的内容是我想要斑马条纹的表格数据。斑马条纹在静态页面上很容易,但我不知道如何对加载到容器中的新内容进行斑马条纹div

这是我正在尝试使用的代码:

$("table tbody tr:even").live("EVENT", function(){
  $(this).addClass("alt");
});

“事件”不应该是"click",或者应该是"mouseover"“onload”或类似的东西。有没有办法做到这一点?感谢您的建议!

~杰瑞德

4

4 回答 4

7

您应该只在 load() 的回调函数中运行斑马条纹代码。

$("#myDiv").load( "/somecontroller/someaction", { data: value }, function() {
    $("#myDiv").find( "table tbody tr:even" ).addClass( "alt" );
});
于 2009-11-04T18:39:16.827 回答
0

要动态地将数据添加到表中,您必须使用另一个代码。不是吗?在该函数内部,将数据加载到表后,将 css 类添加到行。在该函数中使用以下方法,

$("table tbody tr:even").removeClass("alt").addClass("alt");
于 2009-11-04T18:44:34.350 回答
0

作为 tvanfosson 答案的扩展(在这种情况下,这是你最好的选择), live() 函数目前仅支持某些事件。这是来自http://api.jquery.com/的文档:

可能的事件值:click、dblclick、mousedown、mouseup、mousemove、mouseover、mouseout、keydown、keypress、keyup

目前不支持:blur、focus、mouseenter、mouseleave、change、submit

于 2009-11-04T18:41:26.977 回答
-1

我这样做是为了用 jquery 1.4.2 触发事件

$("body").live("mousemove", function(){ $(".zebra tr:nth-child(even)").addClass("alt"); });

于 2010-06-19T05:28:59.710 回答