2010-11-24 86 views
2

我已经编写了一个使用ASP GridView来显示数据表格的ASP.net页面。如何使用jQuery设置表格单元格的背景颜色

我想写一些JavaScript,它会将每个包含值'0'的红色单元格着色。我想我可以使用诸如$(“td”),each或document.getElementsByTagName('td')之类的东西。我有一些CSS,我想申请单元格使它们变成红色。

我该如何做到这一点与jQuery(或没有jQuery)?

回答

1
$("td.td-in-grid-class").each(function() { 
    if($(this).text() == "0") { 
     $(this).attr("class", "red"); // assume you have css class named "red" 
     $(this).attr("style", "background-color:#ff0000;"); // alternative 
    } 
}); 
+0

建议使用`addClass()`和`CSS()`,而不是`ATTR() `去做。这样,它不会清除当前的所有类和样式。 – 2010-11-24 20:51:10

0

喜欢的东西

$("td").toggleClass("my_css_class"); 

如果你只是渲染数据在服务器端生成,虽然,那我就应用类服务器端,而不是使用JavaScript。

+0

我很难让它呈现我想要的服务器端的方式。我认为客户端可能会提高灵活性。 – 2010-11-24 20:46:18

3

jQuery的filter()方法使这很短:

$("td").filter(function() { 
    return $(this).text() == "0"; 
}).css("backgroundColor", "red"); 

或使用CSS类:

$("td").filter(function() { 
    return $(this).text() == "0"; 
}).addClass("YourRedClass"); 
相关问题