设置单元格文本颜色的格式

时间:2018-10-05 23:41:37

标签: javascript tabulator

此列格式化程序可以很好地设置背景颜色,但是我根本看不到文本。

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;
}

Link to screenshot of table as rendered

Link to rendering without the formatter

1 个答案:

答案 0 :(得分:2)

您的行:

cellElement.style.color = "#FFFFFF";

应该可以正常工作,我已经进行了一些测试,并且可以正常工作。

我建议您使用浏览器检查器查看哪些CSS覆盖了它。

您也不会在格式化程序中返回该单元格的值,因此该单元格内将不会显示任何内容。

您需要将此行添加到格式化程序功能的底部

return cell.getValue();