繁体   English   中英

基于下拉列表过滤器的jQuery Sum值

[英]Jquery Sum Values based on dropdown list filter

我有一个下拉过滤器,可以工作并过滤我的jquery数据表中的数据,但是我想知道每次有人从我的下拉列表中选择一个值时,我如何才能使它得到过滤器,我需要对过滤后的数据表中的所有值求和? ?? 我怎样才能做到这一点?

我的表是使用Jquery数据表创建的,我需要根据用户的值将“ td”“总计”中的所有值相加,然后选择如何在javascript或jquery中执行此操作?

这是我的下拉列表:

<select id="selectorpdv">
  <option value="">Todos</option>
  <option value="01/02/2016">@item</option> // USER SELECTS THIS VALUE
  <option value="02/02/2016">@item</option>
</select>     

这是我的过滤器代码:

$('#selectorpdv').on('change', function () {
  dataTable.columns(2).search(this.value).draw();
});

这是我的表代码:

 <table class='table datatable-column-search-inputs table-hover table-striped table-bordered'>

    <thead>

        <tr>
            <td>Con</td>
            <td class='thead_search'>Platillo</td>
            <td class='thead_select'>Pdv</td>
            <td class='thead_select'>Rid</td>
            <td >PV</td>
            <td>0</td>

            <td >Total</td>
            <td class='sum'>Venta</td>
            <td class='fechas'>Fecha</td>

        </tr>
    </thead>
    <tfoot>
        <tr>
            <th colspan="4" style="text-align:left">Total:</th>
            <th></th>
        </tr>
    </tfoot>

</table>

下面提供了相同的api:

    dataTable.column( i ).data().sum();

如果以上方法在当前版本的数据表库中不起作用,请使用以下代码:

  function sumColumn() {
        var dataArray = dataTable._('td:nth-child(4)', {"filter": "applied"});
        var sum = 0;    
        for (var i=0, len=dataArray.length; i < len; i++) {
            sum += +dataArray[i];
        } 
        alert(sum);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM