>我有一个包含 4 列的 dgrid,如下所示:
gridColumns: function() {
return [{
"field": "Column1",
"label": Column1
}, {
"field": "Column2",
"label": Column2
}, {
"field": "Column3",
"label": Column3
}, {
"field": "Column4",
"label": Column4,
"sortable": false,
"renderCell" : function(object, value, node) {
if(value.length > 1){
for ( var i = 0; i < value.length; i++) {
domConstruct.create("div", {
"innerHTML" : value[i]
}, node);
}
return;
}
return document.createTextNode(value);
}
}];
},
如您所见,Column4
cell
可以有多个值,因此我覆盖了renderCell
遍历值并将它们输出到单元格内的新行中。
这工作正常。
但是,所有 3 个值的背景颜色与行的背景颜色相同。因此,如果行是灰色或白色(取决于它是奇数还是偶数(,则单元格背景为灰色或白色。
我怎样才能对这些"子值"也做同样的事情?
我想要的行为是:如果行的背景色应该是第一个值的背景色,第二个值中的替代颜色,则第三个值中的第一种颜色,依此类推。我不在乎最后一个值的背景颜色是否与下一行的颜色相同。我只想交替值的颜色。
我如何使用上面的代码做到这一点?
将 CSS 类(或style
属性(添加到要创建的子单元格中:
domConstruct.create("div", {
className: 'subCellClass',
innerHTML : value[i]
}, node);