我正在使用bottomCalcSum对列进行“求和”,然后根据该值格式化求和的单元格。就是这样,对求和单元格进行了适当的着色(感谢AKLaver)。
但是,我想做的是基于总和,为该列中的所有单元格着色。
-- I have tried the following and this works for the single summed cell:
var colorFormatter = function(cell, formatterParams, onRendered){
var val = cell.getValue();
if (val <= 37){
cell.getElement().style.backgroundColor="green";
}else if (val > 37 && val <= 40){
cell.getElement().style.backgroundColor="yellow";
} else if (val > 40){
cell.getElement().style.backgroundColor="red";
}
return val;
};
但是,我要做的是根据bottomSum中的“求和”值对整个列进行着色,这是行不通的,我认为这样做是:
var colorFormatter = function(cell, formatterParams, onRendered){
var val = cell.getValue();
//console.log(val);
var col = cell.getColumn();
var cells = col.getCells();
cells.forEach(function(cell, val){
console.log("Cell Values: " + cell.getValue());
if (val <= 37){
cell.getElement().style.backgroundColor="green";
}else if (val > 37 && val <= 40){
cell.getElement().style.backgroundColor="yellow";
} else if (val > 40){
cell.getElement().style.backgroundColor="red";
}
});
return val;
};
我假设如果我调用col.getCells(),它将返回该特定列的所有单元格对象,我可以循环遍历这些对象,然后进行相应的着色,但是我什至无法触发console.log()所有单元格循环中显示一条消息。