如何在Dojo数据网格中有条件地设置单元格样式?

时间:2010-03-31 14:24:14

标签: javascript datagrid dojo dojox.grid

基本上我想要做的是根据单元格的值将额外的CSS类应用于数据网格中的单个单元格。一个例子是当美元值为负时将文本着色为红色。

我发现的唯一解决方案是使用列的格式化程序为包含基于传入值的类的跨度创建字符串。我认为必须有更好的方法。

1 个答案:

答案 0 :(得分:9)

指定结构时,传入一个对象,该对象表示给定列的窗口小部件配置。作为此对象的一部分,请在定义中包含格式化程序函数:

{
...
 formatter: function(val, rowIdx, cell) {
    classes = compute_classes(val, rowIdx, cell);
    cell.customClasses.push(classes);
  }
}

但是你的'compute_classes'计算要使用的类取决于你。它们将应用于单元格,然后您可以在CSS中管理它们的外观。