计算数据的 Tablesorter 自定义方程式

Tablesorter custom equations on calculated data

我需要对两列求和,然后找出这两列之间的差异。用例很简单:在一列中我有所有购买,第二列包含所有交易,用户将看到差异。

这里是计算的相关代码:

<tfoot>
<tr>
<th>Total</th>
<th data-math="col-sum"></th>
<th data-math="col-sum"></th>
<th data-math="row-difference"></th>
</tr>
</tfoot>

公式可以非常简单,例如

$.tablesorter.equations['difference'] = function(arry) {
    return arry[1] - arry[2];
  };

你会如何让它发挥作用?

数学小部件的设置方式,它优先考虑行计算而不是列计算。所以在这种情况下,页脚行会在计算列和之前尝试计算行差。

要解决此问题,请更改 math_priority widget option so that the 'col' comes before 'row' (demo):

$(function() {
  $.tablesorter.equations.difference = function(arry) {
    return arry[1] - arry[2];
  };
  $("table").tablesorter({
    theme: 'blue',
    widgets: ['math', 'zebra'],
    widgetOptions: {
      // default [ 'row', 'above', 'below', 'col' ]
      // move 'col' first in this case
      math_priority: ['col', 'row', 'above', 'below']
    }
  });
});