此列格式化程序可以很好地设置背景颜色,但是我根本看不到文本。
function truthFormatter(cell, formatterParams, onRendered) {
var cellValue = cell.getValue();
var cellElement = cell.getElement();
if (cellValue == "T") {
cellElement.style.backgroundColor = "#0000B3";
cellElement.style.color = "#FFFFFF";
}
else if (cellValue == "F") {
cellElement.style.backgroundColor = "#B30000";
cellElement.style.color = "#FFFFFF";
}
}
Chrome在这些单元格之一上的样式检查器建议一切都应该没问题:
element.style {
width: 40px;
text-align: center;
background-color: rgb(0, 0, 179);
color: rgb(255, 255, 255);
height: 25px;
}
在独立的测试配置中,我得到了相同的行为-没有应用其他CSS。
此外,不应该使用格式化程序的单元格中的文本也不可见-即使这里的样式检查看起来也不错:
element.style {
width: 151px;
text-align: right;
color: rgb(0, 0, 0);
height: 32px;
}
答案 0 :(得分:2)
您的行:
cellElement.style.color = "#FFFFFF";
应该可以正常工作,我已经进行了一些测试,并且可以正常工作。
我建议您使用浏览器检查器查看哪些CSS覆盖了它。
您也不会在格式化程序中返回该单元格的值,因此该单元格内将不会显示任何内容。
您需要将此行添加到格式化程序功能的底部
return cell.getValue();