1

我通过在我的自定义格式化程序中扩展 jqgrid fmatter 来进行日期格式化。如果我喜欢这样,那么“查找”功能将不起作用。下面是示例 colModel 和自定义格式化程序函数。

colModel = {name:currentLevelInDate, label:"Period Beginning (GMT)", index:currentLevelInDate,sorttype: "date",datefmt: datefmt, formatter:"formatDate",
unformat: 'unformatDate', formatoptions: { newformat:newFormat, srcformat:srcFormat}}

formatDate : function(cellvalue, opts, rowObject) {
...
...
var op = $.extend({}, $.jgrid.formatter.date);
if(opts.colModel.formatoptions != undefined) {
    op = $.extend({}, op, opts.colModel.formatoptions);
}

cellDisplayValue = $.fmatter.util.DateFormat(op.srcformat,cellvalue,op.newformat,op);
....

return cellDisplayValue;
}
4

1 回答 1

0

您应该发布您使用的更完整的代码。例如,您使用变量datefmt, newFormat, srcFormat,但您没有包含变量的定义。

您的代码中的一个明显错误是将函数名称用作字符串:

formatter: "formatDate"

而不是用作变量:formatter: formatDate. formatter: "formatDate"只有formatDate定义为对象的属性时,语法才是正确的$.fn.fmatter。如果你这样做,那么你应该包含完整的代码,它可以准确地显示你所做的事情。如果您仅发布您怀疑存在错误的代码片段,则无法在代码中找到错误。最好的办法是发布可用于重现您的问题的完整代码。

于 2013-02-06T09:29:42.323 回答