根据其值动态更改每个单元格的背景颜色

时间:2015-04-20 13:14:51

标签: css perl html-table html-email

我有从oracle数据库加载两列的表。

一列包含employee_name,另一列包含phone_no

我在perl中运行css脚本,在电子邮件中发送html表。但是我想以用户友好的方式表示表格。

例如:

  1. 我想将{1}}的第1列单元格的bg颜色更改为红色。

  2. 我想将第2列单元格的bg颜色更改为红色emplpyee_name=steven

  3. 我想在动态加载期间更改phone_no=null。我不想要bgcolour,只有css / html才有可能吗?

    jQuery

2 个答案:

答案 0 :(得分:1)

我不确定当你想要在加载期间改变背景颜色时是否正确#34;。但是当接收电子邮件客户端呈现您的HTML时,就不再有动态过程 - 所有数据库交互都由您的脚本完成。因此,您可以在perl脚本中应用背景颜色,并且您不需要JavaScript甚至jQuery。

您只需要更改一小段代码:

在" STYLE" -here-doc add

td.alert { padding:3px;border:1px solid #0066FF; background-color: #ff0000;}

修改executeSQL的while循环体,如下所示:

$count++;
push(@HTML,"<tr>");
chomp($ary[0]);
push(@HTML,sprintf("<td%s>%s</td>",
                    ($ary[0] eq "steven") ? " class=\"alert\"" : "",
                    $ary[0]));

chomp($ary[1]);
push(@HTML,sprintf("<td%s>%s</td>",
                    (!length($ary[1]) || $ary[1] eq "1234") ? " class=\"alert\"" : "",
                    $ary[1]));

push(@HTML,"</tr>\12"); 

突出显示第2列或条目&#34; 1234&#34;中的空条目。

答案 1 :(得分:0)

我不知道在CSS中做任何你期望的事情,在jQuery中它非常简单。

$(document).ready(function() {
    $(element).css('background-color','color');
});

element是您正在使用的#id.classdiv

color是您计划使用的十六进制颜色,如#FF0000为红色。

不要试图用jQuery做到这一点很简单。