Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在datatable上显示列的总和(总计)并导出到excel_Javascript_Jquery_Html_Datatables - Fatal编程技术网

Javascript 在datatable上显示列的总和(总计)并导出到excel

Javascript 在datatable上显示列的总和(总计)并导出到excel,javascript,jquery,html,datatables,Javascript,Jquery,Html,Datatables,我正在将一个数据表导出为excel文件,共有4列,其中第3列包含产品价格,现在在导出后,我应该会在表的末尾看到另一行,该行带有“总计”,并包含第3列值的总和 我曾想过使用footercallback在datatable上显示它,并直接导出datatable,但由于我在footer部分使用多重过滤器,无法再创建一个页脚,所以这个想法不起作用 期望值:在html页面上datatable附近显示第3列(已过滤)的总和,表示当我导出为excel时,应在表行末尾包含总和值。据我所知,您需要每个产品的所有价

我正在将一个数据表导出为excel文件,共有4列,其中第3列包含产品价格,现在在导出后,我应该会在表的末尾看到另一行,该行带有“总计”,并包含第3列值的总和

我曾想过使用footercallback在datatable上显示它,并直接导出datatable,但由于我在footer部分使用多重过滤器,无法再创建一个页脚,所以这个想法不起作用


期望值:在html页面上datatable附近显示第3列(已过滤)的总和,表示当我导出为excel时,应在表行末尾包含总和值。

据我所知,您需要每个产品的所有价格总和。您可以在datatable中将总计作为隐藏列。当您进行excel导出时,它将显示总计。下面是示例html和javascript代码。希望这能对你有所帮助

HTML


您可以这样做:

    var len=$("tr").length;

    var sum=0;

    for(var i=1;i<len;i++){
      sum += parseFloat($("tr td").eq(2).html());
    }

    $("table").createElement("<tr><td></td><td></td><td>"+sum+"</td></tr>");
var len=$(“tr”).length;
var总和=0;

对于(var i=1;iAdd total作为隐藏列导出到datatable。导出datatable时,它也将具有隐藏列值。我的要求是添加一个*行“作为总计,这将给出@Sangita的产品价格总和。请与一些代码示例共享更多详细信息,以便更好地理解代码,它已经具有“总计”“列中有数据,但我需要动态计算所有产品的价格之和,并在数据表中显示为一行“总计”。这意味着我将有一行总计,它会根据过滤后的产品不断更新。因为您添加了第3列,这就是为什么
eq(2)
  $('#table2').dataTable({


            dom: 'Bfrtip',
            "columnDefs": [

            {
                "targets": [ 4 ],
                "visible": false
            }
        ],
            buttons: [{
                extend: 'excel',
                filename : 'test',

            }]
        });
    var len=$("tr").length;

    var sum=0;

    for(var i=1;i<len;i++){
      sum += parseFloat($("tr td").eq(2).html());
    }

    $("table").createElement("<tr><td></td><td></td><td>"+sum+"</td></tr>");