1

我正在使用此示例jqGrid 和动态列绑定动态加载 ColName 和 ColModel 的 JQGrid

一切看起来都很好。我在 Formatter 的列之一中使用 Formatter

function UrlFmatter(cellvalue, options, rowObject) {
}

当我在 .JS 中编写 Columns 时,它看起来像这样

colmodel :[{ name: 'somenam', formatter: UrlFmatter, width: 95, align: "center", index: 'somenam'}]

现在动态加载它不起作用,因为我想没有调用该函数。

我以为formatter: "UrlFmatter"它是这样加载的,并使它成为一个字符串。我如何进行这个函数调用?

还是有更好的方法可以处理这些情况?

4

1 回答 1

1

它似乎与您的旧问题完全相同。正如我之前回答的那样(请参见此处),您应该替换UrlFmatterfrom的定义

function UrlFmatter(cellvalue, options, rowObject) {
    return "<a href='DetailResult?airportname=" + options.rowId + "' >" +
        cellvalue + "</a>";
}

(function ($) {
    "use strict";
    $.extend($.fn.fmatter, {
        urlFmatter: function (cellValue, options) {
            return "<a href='DetailResult?airportname=" + options.rowId + "' >" +
                cellvalue + "</a>";
        }
    });
}(jQuery));

您应该在之后(或之后)直接 包含上述代码。之后你可以修改jquery.jqGrid.min.jsjquery.jqGrid.src.js

{ name: 'somenam', formatter: UrlFmatter, width: 95, align: "center", index: 'somenam'}

{ name: 'somenam', formatter: "urlFmatter", width: 95, align: "center"}
于 2013-03-19T07:52:32.130 回答