首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >free-jqgrid预定义货币格式化程序模式

free-jqgrid预定义货币格式化程序模式
EN

Stack Overflow用户
提问于 2018-12-14 09:50:25
回答 1查看 171关注 0票数 0

我使用的是free-jqgrid 4.15.6。我正在使用内置的货币格式化程序,它可以完美地格式化数字。我在格式选项中使用了前缀:‘$’,defaultValue:'‘。

第一次加载网格时,currency列为空的行在网格中不显示格式。

但是在行内编辑之后,如果编辑控件中没有输入任何内容(意味着控件没有输入值),那么在编辑之后,预定义的格式化程序会在单元格中显示“$”,而不是根据需要显示为空。

查看免费的jqgrid代码库,我发现这个函数被用来设置格式化显示:

代码语言:javascript
复制
   var insertPrefixAndSuffix = function (sOutput, opts) {
    // Prepend prefix
    sOutput = (opts.prefix) ? opts.prefix + sOutput : sOutput;
    // Append suffix
    return (opts.suffix) ? sOutput + opts.suffix : sOutput;
},

我在这个函数的开头添加了一个条件测试,如果要格式化的值为空字符串,则强制jqgrid不使用货币选项进行格式化。

代码语言:javascript
复制
var insertPrefixAndSuffix = function (sOutput, opts) {

    // return empty string if no cellvalue
    if(sOutput == '') { return ''; }

    // Prepend prefix
    sOutput = (opts.prefix) ? opts.prefix + sOutput : sOutput;
    // Append suffix
    return (opts.suffix) ? sOutput + opts.suffix : sOutput;
},

然而,这种编辑,尽管它对我有效,但不是完成这项工作的正确方法。我知道我应该扩展jqGrid预定义的currenct格式化程序对象,或者甚至扩展jQuery格式化程序对象,但是我所做的一切努力都失败了。

谁能告诉我如何添加这个条件代码逻辑,这样我就可以保持免费的jqgrid源代码不变,但覆盖jqgrid的预定义货币格式化程序?

EN

回答 1

Stack Overflow用户

发布于 2018-12-16 21:10:27

我认为定义您自己的自定义格式化程序比扩展现有的格式化程序更好。Guriddo jqGrid is described here中自定义格式化程序的定义

它应该类似于free-jqGrid。

这里需要注意的是,您还需要定义一个自定义的非格式化函数。只需查看提供的文档即可。

Here你可以确切地看到你的案例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53772522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档