Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.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当前绘图查询字符串_Javascript_Jquery_Datatable - Fatal编程技术网

Javascript 获取要发送到服务器以导出为报表的datatable当前绘图查询字符串

Javascript 获取要发送到服务器以导出为报表的datatable当前绘图查询字符串,javascript,jquery,datatable,Javascript,Jquery,Datatable,我有一个数据表从服务器上绘制数据。我尝试使用tabletools导出pdf和excel,但它只导出datatable第一页上的内容,没有导出datatable分页上的其他页面 因此,我希望获取当前绘图的查询字符串,以便将其添加到指向另一个服务器请求url的链接中,该url将从此处生成报告 以下是我的datatable脚本: table = $('#table').DataTable({ processing: true, serverSide: true,

我有一个数据表从服务器上绘制数据。我尝试使用tabletools导出pdf和excel,但它只导出datatable第一页上的内容,没有导出datatable分页上的其他页面

因此,我希望获取当前绘图的查询字符串,以便将其添加到指向另一个服务器请求url的链接中,该url将从此处生成报告

以下是我的datatable脚本:

table = $('#table').DataTable({
        processing: true,
        serverSide: true,            
        ajax: {
        url: "http://xxxx/sales",
        data: function ( d ) {
            d.dateGroup = $(".btn.active").attr("data-ecvalue");
            d.startDate = $("input[name=daterangepicker_start]").val();
            d.endDate = $("input[name=daterangepicker_end]").val();               
        }},
        "dom": 'T<"clear">lfrtip',
        "tableTools": {
            "aButtons": [
                {
                    "sExtends": "copy",
                    "sButtonText": "Copy to clipboard"
                },
                {
                    "sExtends": "csv",
                    "sButtonText": "Save to CSV"
                },
                {
                    "sExtends": "xls",
                    "oSelectorOpts": {
                        page: 'current'
                    }
                },
                 {
                      "sExtends": "download",
                      "sButtonText": "Download PDF",
                      "sUrl":     "exportpdf"
                 }
            ]
        },
        type:"POST",
        columns: [
        { "data": "date" },
        { "data": "order" },
        { "data": "totals" },
        { "data": "subtotals" }
        ]
});
table=$('#table').DataTable({
处理:对,
服务器端:是的,
阿贾克斯:{
url:“http://xxxx/sales",
数据:功能(d){
d、 dateGroup=$(“.btn.active”).attr(“数据值”);
d、 startDate=$(“输入[name=daterangepicker_start]”)。val();
d、 endDate=$(“输入[name=daterangepicker_end]”)val();
}},
“dom”:“Tlfrtip”,
“表格工具”:{
“阿布顿”:[
{
“复制”,
“sButtonText”:“复制到剪贴板”
},
{
“性倾向”:“csv”,
“sButtonText”:“保存到CSV”
},
{
“性倾向”:“xls”,
“oSelectorOpts”:{
页面:“当前”
}
},
{
“下载”,
“sButtonText”:“下载PDF”,
“sUrl”:“exportpdf”
}
]
},
类型:“POST”,
栏目:[
{“数据”:“日期”},
{“数据”:“顺序”},
{“数据”:“总计”},
{“数据”:“小计”}
]
});
我试过:
var mydata=table.fnSettings();
警报(mydata)

但我不知道怎么做


我正在使用datatables v1.10。

您的代码就快完成了

我正试着按照你解释的去做。所以,我这样做:

$('#export-csv').on('click', function(){
    var data = table.ajax.params(); 
    var x = JSON.stringify(data, null, 4); 

    $(this).attr("href", this.href + "?" + $.param(data) + '&o=csv');
})

你的代码就快到了

我正试着按照你解释的去做。所以,我这样做:

$('#export-csv').on('click', function(){
    var data = table.ajax.params(); 
    var x = JSON.stringify(data, null, 4); 

    $(this).attr("href", this.href + "?" + $.param(data) + '&o=csv');
})

下一个代码为我提供了发送到服务器的数据的对象,但我需要URL本身:我可以将此代码中的对象转换为服务器的URL请求吗?on('xhr',function(){var data=table.ajax.params();var x=JSON.stringify(data,null,4);alert(x);});下一个代码为我提供了发送到服务器的数据的对象,但我需要URL本身:我可以将此代码中的对象转换为服务器的URL请求吗?on('xhr',function(){var data=table.ajax.params();var x=JSON.stringify(data,null,4);alert(x);});