我的jqgrid中有一个coulmn状态。
如果状态为“活动”,我希望同一行中的另一个单元格为绿色。 如果状态为“未激活”,我希望单元格为红色。
如何做到这一点?
截至目前,我已在“图片”行创建了自定义格式化程序:
formatter: function () { return "<img src='../images/red.png'/>" }
答案 0 :(得分:7)
有多种方法可以在jqGrid中实现它:
cellattr
设置单元格的类或样式(请参阅here或here)setCell
的使用情况(请参阅here)beforeProcessing
方法修改从服务器返回的数据。在您可以实现任何计算列的方式。如果需要,列的值可以是HTML片段。我建议您使用cellattr
或beforeProcessing
方法或两者兼而有之。您可以考虑使用背景图片而不是<img>
。 cellattr
方法的最大优点是,您可以在单元格中放置其他信息,如颜色,并使用相应的格式化程序格式化另一个数据。所以你可以继续使用&#39; number&#39;或者&#39; date&#39;形成者并且在同一单元格中有一些颜色效果。
CSS的可能性非常强大。作为一个例子,我可以参考the answer来演示如何实现漂亮的渐变效果。
我建议您阅读the answer,其中讨论了在单元格上设置不同样式和类别的优缺点。