如何在jqGrid单元格中设置空白而不是NaN?使用格式化程序?有一个例子吗?
答案 0 :(得分:6)
这真的很老了,但jqGrid文档没有一个简单的答案,当我在寻找相同的答案时,这个问题在Google搜索结果中首先出现。
使用此代码对整数使用预定义格式化程序选项时,我能够显示空白单元格而不是0:
{ name: 'Quantity', formatter: 'integer', formatoptions: { defaultValue: ''} }
defaultValue
只是设置为空白。
答案 1 :(得分:1)
我不会重写自定义格式化程序 - 但会覆盖它(或创建一个新格式化程序)!这样,当新版本的jQgrid出现时,您不会覆盖自定义包装器。
例如,我的用户不希望看到值为0,所以我这样做:
$.fn.fmatter.currency = function (cellval, opts) {
if (cellval == 0) {
return '';
}
var op = $.extend({},opts.currency);
if(!isUndefined(opts.colModel.formatoptions)) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if(isEmpty(cellval)) {
return op.defaultValue;
}
return $.fmatter.util.NumberFormat(cellval,op);
};
但我也可以称之为:
$.fn.fmatter.currencyNoZero
在你的情况下,我会这样做:
$.fn.fmatter.currency = function (cellval, opts) {
if (cellval == null) {
return '';
}
var op = $.extend({},opts.currency);
if(!isUndefined(opts.colModel.formatoptions)) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if(isEmpty(cellval)) {
return op.defaultValue;
}
return $.fmatter.util.NumberFormat(cellval,op);
};
答案 2 :(得分:0)
在服务器上,在以XML / JSON /之类的方式返回数据之前,请尝试将DBNull值设置为等于空字符串。
或者,如果可以将NULL值显示为0,则可以按以下行修改SQL:
SELECT IsNull(my_amount, 0)