sum()

对数据集中值求和。

很简单,此插件会从 API 结果集中提取数据并对其求和,返回求和值。数据可以来自任何数据源,包括列数据、单元格或行。

请注意,它会尝试‘取消格式’传入的任何基于字符串的数据 - 即它会删除所有非数字字符,以便尽力对所有数据类型求和。在使用诸如货币之类的格式化数字时,这很有用。不过其缺点在于,如果传入的不是数字数据,则不会引发错误。您应当知道这一点,以防返回意外值 - 这很可能是由于输入值不是预期值所致。

使用

此插件可以通过多种不同方式获取和使用。

浏览器

此插件可在 DataTables CDN 上获得

JS

此后,插件会对全局 DataTables 实例自动注册自身。如果您使用的是 AMD 加载器(如 Require.js),也可以使用此文件。

请注意,如果您使用的是多个插件,那么将插件组合到单个文件中并在您自己的服务器上托管会很有用,而不是向 DataTables CDN 发出多个请求,这在性能方面有益。

NPM

所有插件都可在 NPM 上获得(也可以将其用于 Yarn 或任何其他 Javascript 包管理器),作为 datatables.net-plugins 的一部分。要使用此插件,请先安装插件包

npm install datatables.net-plugins

ES 模块

然后,如果您使用的是 ES 模块,请导入 datatables.net、您需要的任何其他 DataTables 扩展以及插件

import DataTable from 'datatables.net';
import 'datatables.net-plugins/api/sum().mjs';

CommonJS

如果您对 Node 使用的是 CommonJS 加载器(例如对于旧版 Webpack 或非模块 Node 代码),请使用以下方法来 require 插件

var $ = require('jquery');
var DataTable = require('datatables.net');
require('datatables.net-plugins/api/sum().js');

示例

// Simply get the sum of a column
  var table = $('#example').DataTable();
  table.column( 3 ).data().sum();
// Insert the sum of a column into the columns footer, for the visible
  // data on each draw
  $('#example').DataTable( {
    drawCallback: function () {
      var api = this.api();
      $( api.table().footer() ).html(
        api.column( 4, {page:'current'} ).data().sum()
      );
    }
  } );

版本控制

如果您有任何关于如何改进此插件的想法,或发现任何错误,它可在 GitHub 上获得,非常欢迎提交请求!