Jqgrid custom format use bracket() if negatif value

前端 未结 1 737
借酒劲吻你
借酒劲吻你 2020-12-12 01:32

Is any solution in Jqgrid if there is negative number then show bracket \"()\" ?

ex: show (23) if value was -23

相关标签:
1条回答
  • 2020-12-12 01:56

    You can use custom formatter to do what you want. To format numbers or integers correctly you can call $.fmatter.util.NumberFormat method with $.jgrid.formatter.number or $.jgrid.formatter.integer as the second parameter. The example of the formetter is

    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 + ')') + ' €';
    }
    

    you can additionally change color or some other CSS style of displaying of the negative numbers. You can use cellattr property to add class or style attribute in the cells with negative numbers:

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

    The demo demonstrate the settings. The results are the following

    enter image description here

    0 讨论(0)
提交回复
热议问题