根据另一个jqgrid单元格的值在jqgrid单元格中设置值

时间:2012-02-17 11:57:49

标签: jqgrid

我的jqgrid中有一个coulmn状态。

如果状态为“活动”,我希望同一行中的另一个单元格为绿色。 如果状态为“未激活”,我希望单元格为红色。

如何做到这一点?

截至目前,我已在“图片”行创建了自定义格式化程序:

formatter: function () { return "<img src='../images/red.png'/>" }

1 个答案:

答案 0 :(得分:7)

有多种方法可以在jqGrid中实现它:

  • 使用cellattr设置单元格的类或样式(请参阅herehere
  • custom formatter的使用情况(请参阅here
  • setCell的使用情况(请参阅here
  • 使用beforeProcessing方法修改从服务器返回的数据。在您可以实现任何计算列的方式。如果需要,列的值可以是HTML片段。

我建议您使用cellattrbeforeProcessing方法或两者兼而有之。您可以考虑使用背景图片而不是<img>cellattr方法的最大优点是,您可以在单元格中放置其他信息,如颜色,并使用相应的格式化程序格式化另一个数据。所以你可以继续使用&#39; number&#39;或者&#39; date&#39;形成者并且在同一单元格中有一些颜色效果。

CSS的可能性非常强大。作为一个例子,我可以参考the answer来演示如何实现漂亮的渐变效果。

我建议您阅读the answer,其中讨论了在单元格上设置不同样式和类别的优缺点。