【问题标题】:Make <td> background-color equal array value, but each group of 3 have same value使 <td> background-color 等于数组值,但每组 3 具有相同的值
【发布时间】:2012-05-08 16:37:23
【问题描述】:

我有

for (var i = 0; itr < $("td").length; i++) {
    $("td").eq(i).css("background-color", Colors[i]);
} 

这很有效,但它为每个人 td 着色了一种新颜色,并且该行是 3 列,所以我需要一行 (3) 中的每个 &lt;td&gt; 具有相同的颜色。我无法为表格行本身着色,所以我需要通过修改上面的代码来解决。

【问题讨论】:

  • 你想用不同的颜色为每一行着色吗?
  • 您是否尝试过 colgroup 为列着色?
  • 我真的更喜欢 JS 选项而不是 HTML

标签: javascript jquery html html-table conditional


【解决方案1】:

你是这个意思吗?

var Colors = ["red", "black", "purple", "blue", "gray", "green"];
for (var i = 0; i < $("tr").length; i++) {
    $("tr:eq(" + i + ")").children().css("background-color", Colors[i]);
} ​

此处示例:http://jsfiddle.net/WhnSw/

但是为什么不能给行着色呢?也很简单:

for (var i = 0; i < $("tr").length; i++) {
    $("tr:eq(" + i + ")").css("background-color", Colors[i]);
} ​

【讨论】:

  • 即将给出答案! +'d you :)
  • @Zuul,我知道我们一直在朝着同一个方向思考,+'d 你的评论 ;)
  • 我应该提到我只在特定的 tr (由类名定义)中使用 td ,如“ tr.specific td ”,并且由于某种原因使用您的代码会破坏我的页面。该页面数据量很大,因此包含几个不同的表行,这些行超出了我要编辑的内容。你可以在这里看到jsfiddle.net/WhnSw/1
  • 它有效,但在我的页面上它没有(东西中断),即使我的第一个代码没有破坏任何东西....有什么我可以使用的变体吗?非常感谢您的帮助
  • 您能提供一个指向您页面的链接吗?很难给出不遵守代码的理由。
猜你喜欢
  • 1970-01-01
  • 2018-12-06
  • 1970-01-01
  • 2021-12-29
  • 2015-01-04
  • 1970-01-01
  • 2022-01-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多