这是我的第一个问题,所以请耐心等待。 : - )
我正在使用BIRT(ECLIPSE)创建一个包含多个表的报告。我希望这些表格中的许多单元格具有相同的突出显示规则(彩色背景,喜欢格式化等),基于相同的规则(例如,值等于减去5)。理想情况下,我也希望在其他报告中使用这些突出显示规则,但这并不重要。
如果可能的话,我想创建一个包含突出显示规则的STYLE(因为那时我可以在我需要的任何地方简单地应用它),但是我无法弄清楚如何填写条件框,因为适用对象的名称会有所不同。
如果STYLE不可行或不推荐,我也很乐意使用脚本遍历表格,但我不知道如何做到这一点。
提前致谢!!!
约翰
答案 0 :(得分:0)
是的,您可以使用CSS编写样式,然后使用jQuery
应用条件情境// jQuery
if($('selector').val() == -5){
$('selector').addclass('cssClass1');
}else{
$('selector').addclass('cssClass2');
}
/* CSS */
.cssClass1{color: red;}
.cssClass2{color: blue;}
这应该有效
答案 1 :(得分:0)
如果将来有人遇到这个问题,我就是这样解决的:
首先,我创建了一个名为highlight_1的函数:
function highlight_1(Feld) {
if (Feld.getValue() <= -0.75) {
Feld.getStyle().backgroundColor = "#FF8040"
Feld.getStyle().color = "Black";
} else if (Feld.getValue() <= -0.25) {
Feld.getStyle().backgroundColor = "#FFFF80"
Feld.getStyle().color = "Black";
} else if (Feld.getValue() >= 0.03) {
Feld.getStyle().backgroundColor = "#97D9A2"
Feld.getStyle().color = "Black";
} else {
Feld.getStyle().backgroundColor = "#00874E"
Feld.getStyle().color = "White";
}
}
然后我为onRender事件中的每个元素调用此函数,如下所示:
highlight_1(this)
这不完全是我的想法,但它不需要为每个新元素付出太多努力。