【发布时间】:2014-11-29 17:01:33
【问题描述】:
我是 jQuery 的新手,需要从 JQuery Datatable 实现 Excel 和 PDF 中的数据下载功能。
Datatable 已经实现,我只需要实现下载数据功能。
我用谷歌搜索了它,但找不到更好的文章来更好地解释事情。
下面是代码供参考。
HTML:
<table class="table table-bordered" data-table-name="pqe-contact-dom"></table>
在 HTML 中我们使用 data-table-name="pqe-contact-dom" 将数据填充到表格中,并将数据表代码写入 JS 文件中。
JS 文件代码:
var reportFunction = function(code) {
$.ajax({
type : 'get',
url : url,
dataType : 'json',
success : function(data) {
var reportArray = new Array();
var reportArrayLen = data.length;
for (var l = 0; l < reportArrayLen; l++) {
reportArray[l] = new Array();
var code = data[l].CODE;
var name = data[l].NAME;
var e_name = data[l].E_Name;
var e_phone = data[l].E_Phone;
var e_email = data[l].E_eMail;
reportArray[l][0]= supplier_code;
reportArray[l][1] = supplier_name;
reportArray[l][2] = e_name;
reportArray[l][3] = e_phone;
reportArray[l][4] = e_email;
}
var reportArrayVar = reportArray;
gotoReport( reportArrayVar ); //Calling below the function that datatable and //passing data array to populate data
},
error : function() {
alert("ajax error");
}
});
};
//This function will populate the data to the datatable
function gotoReport(reportArrayVar){
require( [ 'jquery', 'datatables', 'prettify', 'bootstrap'], function(jQuery)
{ jQuery('table[data-table-name="nonqmreports-dt"]').DataTable(
/* options */{
//useFloater : false
useFloater : false,
'aoColumns' : [
{'sTitle' : 'Code', 'sClass' : 'essential'}, //essential
{'sTitle' : 'Name ', 'sClass' : 'optional' },
{'sTitle' : 'E Name', 'sClass' : 'essential'},
{'sTitle' : 'E Phone', 'sClass' : 'essential'},
{'sTitle' : 'E eMail ', 'sClass' : 'optional' }
],
'aaData': reportArrayVar,
'bProcessing': true,
'isResponsive' : true,
'bDestroy': true,
'bRetrieve': false,
'bPaginate':true,
// 'bStateSave': true,
'bInfo': true,
'sPaginationType': 'full_numbers'
})
});
}
在此我需要将数据下载到 Excel 和 PDF 功能,但我不清楚如何做到这一点。任何人都可以帮助我了解如何去做吗?
【问题讨论】:
-
在其中添加任何内容时出错。我已经添加了这个,但是 "tableTools": { "sSwfPath": "/swf/copy_csv_xls_pdf.swf" } 但出现错误,甚至尝试添加按钮但不起作用
标签: javascript jquery ajax datatables jquery-datatables