gpt4 book ai didi

jquery - 如何更改 jqgrid 自定义格式化程序中单元格的背景颜色?

转载 作者:行者123 更新时间:2023-12-03 22:24:37 26 4
gpt4 key购买 nike

我可以通过在 jqgrid 自定义格式化程序中执行此操作来更改文本颜色:

function YNFormatter(cellvalue, options, rowObject)
{
var color = (cellvalue == "Y") ? "green" : "red";
var cellHtml = "<span style='color:" + color + "' originalValue='" +
cellvalue + "'>" + cellvalue + "</span>";

return cellHtml;
}

但我现在想更改整个单元格的背景颜色(而不是文本颜色)。

这可能吗?

最佳答案

如果你想使用 <span>自定义单元格格式化程序内部的元素,您可以从自定义格式化程序返回

return '<span class="cellWithoutBackground" style="background-color:' +
color + ';">' + cellvalue + '</span>';

其中span.cellWithoutBackground的样式例如,您可以定义如下

span.cellWithoutBackground
{
display:block;
background-image:none;
margin-right:-2px;
margin-left:-2px;
height:14px;
padding:4px;
}

它是如何工作的,你可以实时看到here : enter image description here

更新:答案已经过时了。最佳实践是使用 cellattr回调colModel而不是使用自定义格式化程序。更改单元格的背景颜色通常只是分配 styleclass属性到列的单元格( <td> 元素)。 cellattr colModel 列中定义的回调完全可以做到这一点。人们仍然可以使用预定义的格式化程序,例如 formatter: "checkbox" , formatter: "currency" , formatter: "date"等等,但仍然更改列中的背景颜色。以同样的方式rowattr回调,可以定义为 jqGrid 选项(在 colModel 的特定列之外),允许分配整行( <tr> 元素)的样式/类。

有关cellattr的更多信息可以查到herehere , 例如。 Another answer解释rowattr .

关于jquery - 如何更改 jqgrid 自定义格式化程序中单元格的背景颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3244909/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com