如何更改 jqGrid 中特定单元格的 Html?

How to change Html of a particular cell in jqGrid?

在我的 jqGrid 实现中,我们有一个带有下拉菜单的子网格,我们希望在更改该下拉菜单时更改单元格中的图标。我已经使用 Formatter 生成了下图所示的图标。但现在我想 add/remove 来自单元格的图标图像。这可能吗?我会非常感谢 help/ideas 吗?我们在这个项目中使用 jqGrid for ASP .NET。

function formatActionGridIcons(cellValue, options, rowObject) {
    if (cellValue.indexOf("_") == -1) return '';

    var arr = cellValue.split('_');

    var icon1 = arr[0];
    var icon2 = arr[1];
    var icon3 = arr[2];

    //if (icon1 == "R")
    var cellHtml = getIconHtml(icon1) + getIconHtml(icon2) + getIconHtml(icon3); 
    return cellHtml;

}
function getIconHtml(icon) {
    if (icon == null || icon == "") return "";
    var result = GetIconPath(icon);
    if (typeof (result) === "undefined" || result == "")
        return "";
    else
         return "<img src='" + GetIconPath(icon) + "' width='18px' height='18px' />";
}
function unformatActionGridIcons(cellValue, options, cellObject) {
    return $(cellObject.html()).attr("originalValue");
}

您可以使用setCell修改带有图标的单元格。它在内部调用单元格的格式化程序以生成将在网格中设置的 HTML 片段。所以你只需要使用相同格式的数据 setCell 作为它的 3-d 参数,就像你在网格输入中使用的那样。