使用jQuery更新dynamic / ajax表行的备用颜色

时间:2010-12-16 15:30:56

标签: jquery ajax html-table row alternate

看起来很多但找不到,在$(document).ready事件中通过jQuery应用备用行颜色。

$(document).ready(function(){  

    //Member Directory Table  
    $('.MemberDetail table tr:odd ').css('background','#F0F0EC');  
}  

应用了颜色,但是当使用ajax请求更新表时,它不会更新颜色。那么什么是将替代颜色应用于该表的更好方法呢?

此页面上有一个示例:

Here Dynamic Table

4 个答案:

答案 0 :(得分:5)

当Ajax完成时,您应该使用此脚本。我的意思是

$.ajax({
  url: 'ajax/test.html',
  success: function(data) {
    //to do your jQuery code again;
    $('.MemberDetail table tr:odd ').css('background','#F0F0EC');
  }
});

答案 1 :(得分:1)

在ajax请求之后你必须再次执行表格颜色功能

function ajax() {
doAjaxStuff();

$('.MemberDetail table tr:odd ').css('background','#F0F0EC');
}

答案 2 :(得分:0)

再次更新表格:

$('.MemberDetail table').find('tr:odd').css('background','#F0F0EC').end().find('tr:even').css('background','#fff');

没有神奇的方法来自动维护这些颜色,每次更新表时都必须更新。

答案 3 :(得分:0)

如果您使用类似这样的CSS类:

.alternate
{
    background: #e6f4ff;
}

将替代颜色应用于表行,更容易......在执行一些jQuery动态添加表行之后,您可以执行以下操作:

$("table tbody tr").removeClass("alternate").filter(":odd").addClass("alternate");

无论您做什么,都应该使行正确着色:添加或删除<table>行。

请记住,每次修改<table>时,您都必须始终运行代码。