Javascript Sum Distinct Rows到输入jqueryDatatables

时间:2016-02-21 05:14:59

标签: javascript jquery html datatables

我有一个使用Jquery Datatables填充数据的表,我想要的是能够对列的distinc值中的所有数据求和,但是当更改下拉列表值并将sum值保存到新的Html输入中时Javascript示例:

我的表格里面装满了这样的数据:

|Platillo    |    PDV    |    Precio    |    Can    |    Date    |
------------------------------------------------------------------   
| Poz        |   REST    |     40       |      2    |  01/02/2016|
------------------------------------------------------------------  
| Tor        |   REST    |     50       |      2    |  02/02/2016|
------------------------------------------------------------------
| Zes        |   REST    |     100       |      2   |  01/02/2016|
------------------------------------------------------------------
| Poz        |   FUEM    |     60       |      2    |  01/02/2016|
------------------------------------------------------------------  
| Tor        |   FUEM    |     70       |      2    |  01/02/2016|
------------------------------------------------------------------
| Zes        |   FUEM    |     120       |      2   |  01/02/2016|
------------------------------------------------------------------
| Poz        |   VTSI    |     45       |      2    |  02/02/2016|
------------------------------------------------------------------  
| Tor        |   VTSI    |     57       |      2    |  01/02/2016|
------------------------------------------------------------------
| Zes        |   VTSI    |     10       |      2    |  02/02/2016|
------------------------------------------------------------------

我希望能够将“Precio”列中的所有值加到“Html输入字段”中,但我想将“PDV”列中每个不同值的总和相加,并由值'下拉列表, 例如:如果用户选择日期'01 / 02/2016',我应该使用“PDV”列的所有不同值的数据总和来填充我的html输入,但仅当它们与用户'01/02 /选择的日期相匹配时2016'寻找这个输出:

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

我的输入字段如下:

<input value="//TOTAL SUM FROM REST WHERE DATE IS EQUAL AS UsER SELECT '01/02/2016'" />
<input value="//TOTAL SUM FROM REST WHERE DATE IS EQUAL AS UsER SELECT '01/02/2016'" />
<input value="//TOTAL SUM FROM REST WHERE DATE IS EQUAL AS UsER SELECT '01/02/2016'" />

我是javascript的新手,现在我只能根据所选日期过滤我的数据表,但我需要在每次用户选择日期值时对我的'PDV'列的所有distincs值求和,我该怎么做?

更新:

我有我的下拉过滤器的代码y只需要知道如何根据我的搜索javascript上的唯一列项来对列进行求和

这是我的搜索代码:

     $('#sel0').on('change', function () {
                       dataTable.columns('.fechas').search(this.value).draw();
                       var datafecha = $(this).val();
                      
                   });

1 个答案:

答案 0 :(得分:1)

您需要编写自定义过滤器。或者看看下面的内容以获得一个想法:

ListView