删除Json字符串中的双引号 - 用于函数调用

时间:2013-03-19 05:14:33

标签: asp.net-mvc json jqgrid

我在JQGrid上工作,我正在加载ColName& ColModel动态使用此示例jqGrid and dynamic column binding

一切看起来都不错。我在其中一个格式化列

中使用了Formatter
function UrlFmatter(cellvalue, options, rowObject) {
}

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

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

正在动态加载现在它无法正常工作,因为我想没有调用该函数。

我认为formatter: "UrlFmatter"像这样加载它并使它成为一个字符串。我如何调用此函数?

或者有更好的方法可以处理这些情况吗?

1 个答案:

答案 0 :(得分:1)

这似乎与您的旧问题完全相同。正如我之前回答的那样(请参阅here),您应该从

替换UrlFmatter的定义
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.js之后(或jquery.jqGrid.src.js之后)直接包含上述代码。之后你可以修改

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

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