Jqgrid自定义格式使用括号()if negatif值

Ari*_*adi 2 javascript php jqgrid

Jqgrid中有任何解决方案,如果有负数,那么显示括号"()"

例如:如果值为-23则显示(23)

谢谢

Ole*_*leg 5

您可以使用自定义格式化程序来执行您想要的操作.要正确格式化数字或整数,可以$.fmatter.util.NumberFormat使用$.jgrid.formatter.number$.jgrid.formatter.integer作为第二个参数调用方法.formetter的例子是

formatter: function (cellvalue, options) {
    var value = parseFloat(cellvalue), retult,
        op = $.extend({}, $.jgrid.formatter.number); // or $.jgrid.formatter.integer

    if(!$.fmatter.isUndefined(options.colModel.formatoptions)) {
        op = $.extend({}, op,options.colModel.formatoptions);
    }
    retult = $.fmatter.util.NumberFormat(Math.abs(value), op);
    return (value >= 0 ? retult : '(' + retult + ')') + ' €';
}
Run Code Online (Sandbox Code Playgroud)

您还可以更改颜色或其他一些显示负数的CSS样式.您可以使用属性在带有负数的单元格中cellattr添加classstyle属性:

cellattr: function (rowid, cellvalue) {
    return parseFloat(cellvalue) >= 0 ? '' : ' style="color:red;font-weight:bold;"'
}
Run Code Online (Sandbox Code Playgroud)

该演示演示了这些设置.结果如下

在此输入图像描述