我在JQGrid上工作,我正在加载ColName& ColModel动态使用此示例jqGrid and dynamic column binding
一切看起来都不错。我在其中一个格式化列
中使用了Formatterfunction UrlFmatter(cellvalue, options, rowObject) {
}
当我在.JS中编写Columns时,它看起来像这样
colmodel :[{ name: 'somenam', formatter: UrlFmatter, width: 95, align: "center", index: 'somenam'}]
正在动态加载现在它无法正常工作,因为我想没有调用该函数。
我认为formatter: "UrlFmatter"
像这样加载它并使它成为一个字符串。我如何调用此函数?
或者有更好的方法可以处理这些情况吗?
答案 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"}