我正在格式化dc.js DataTable,我想知道是否有更好的方法。我目前正在尝试根据数据为输出表中的行着色。为此,我输出数据,然后在数据上运行一个renderlet,它将输出着色。
我进一步隐藏了包含数据的列,因为我不希望列显示,我只需要它来确定行的颜色。这个过程看起来像是一个黑客,所以我很好奇是否有人以更优雅的方式自定义格式化DataTable。
欢迎任何建议。
var userChart = dc.dataTable('#company-chart')
.dimension(company)
.group(function (d) {
return d.company;
})
.columns([
function (d) {
return d.job_service_datetime;
},
function (d) {
return d.company;
},
function (d) {
return d.first_name;
},
function (d) {
return d.last_name;
}
])
.renderlet(function (table) {
$("#company-chart tr").each(function (index, Element) {
switch ($(Element).children("td").last().text()) {
case "2":
$(Element).css("background-color", "#FFFFCC");
break;
case "6":
$(Element).css("background-color", "#F5CCCC");
break;
}
if ($(Element).children("td").length > 1) {
$(Element).children("td").last().css("display", "none");
}
});
});
链接到JSFiddle