在所有 jquery dataTables 上设置全局数字格式

Posted

技术标签:

【中文标题】在所有 jquery dataTables 上设置全局数字格式【英文标题】:Set Global number format on all jquery dataTables 【发布时间】:2021-12-22 18:42:54 【问题描述】:

我有大约 100 个 jquery 数据表,所有表都包含不同顺序的数字列,其中一些是 int 有些是 float,我想设置配置 dataTable 设置数字格式的全局函数和应该适用于所有 datatables ,每个表的 targets 列都不同

$.extend($.fn.dataTable.defaults,         
        "columnDefs": [
            "targets": [0,1,3],
            render: $.fn.dataTable.render.number(',', '.', 0)
        ]
    );

对于 int (1234) = 1,234 和对于 float 1234.00 = 1,234.00

【问题讨论】:

如果您在数据表中包含一些示例标记,则提供帮助会更容易。 请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。 数据表的样例不用看,我问的是dataTable的全局设置。我已经发布了上面的代码示例以进行全局设置。 【参考方案1】:

在代码中进行这些更改,代码在单独的 js 文件中。

   $.extend($.fn.dataTable.defaults, 
    "columnDefs": [
        targets: '_all',        
        render: function (data, type, full, meta)            

            if (Number.isInteger(data)) 
                return data.toLocaleString('en-US',  maximumFractionDigits: 0, minimumFractionDigits: 0 );
             else if (isNaN(parseInt(data)))   
                return data;
             else 
                return data.toLocaleString('en-US',  maximumFractionDigits: 2, minimumFractionDigits: 2 );
            
        
    ]
);

【讨论】:

以上是关于在所有 jquery dataTables 上设置全局数字格式的主要内容,如果未能解决你的问题,请参考以下文章

JQuery Datatables 在所有可用页面上获取所有“选中”复选框

jQuery DataTables插件 aoColumnDefs跟aoColumns的用法

jQuery DataTables - 访问所有行数据

jQuery DataTables 显示所有记录作为选项

jQuery DataTables 和初始数据加载

jquery datatables 添加跳转到指定页功能