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

Javascript 如何在Dojo数据网格中有条件地设置单元格的样式?,javascript,datagrid,dojo,dojox.grid,Javascript,Datagrid,Dojo,Dojox.grid,基本上,我想做的是根据单元格的值将附加的CSS类应用于数据网格中的单个单元格。例如,当美元值为负值时,将文本涂成红色 我找到的唯一解决方案是使用列的格式化程序为一个跨度创建一个字符串,该跨度具有基于传入值的类。我认为必须有更好的方法。在指定结构时,传入一个表示给定列的小部件配置的对象。作为此对象的一部分,在定义中包括格式化程序函数: { ... formatter: function(val, rowIdx, cell) { classes = compute_classes(val,

基本上,我想做的是根据单元格的值将附加的CSS类应用于数据网格中的单个单元格。例如,当美元值为负值时,将文本涂成红色


我找到的唯一解决方案是使用列的格式化程序为一个跨度创建一个字符串,该跨度具有基于传入值的类。我认为必须有更好的方法。

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

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

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

这几乎对我有用。可能是因为我运行的是更新版本的Dojo。必须返回该值,否则将不显示该值<代码>返回值在推送类之后。