Javascript 有人能帮我下载Excel和PDF格式的Jquery数据表数据吗
我对jQuery非常陌生,需要从jQuery Datatable在Excel和PDF中实现数据下载功能 Datatable已经实现了,因此只有我需要实现下载数据功能 我在谷歌上搜索了一下,但找不到好文章来更好地解释问题 以下是参考代码 HTML:Javascript 有人能帮我下载Excel和PDF格式的Jquery数据表数据吗,javascript,jquery,ajax,datatables,jquery-datatables,Javascript,Jquery,Ajax,Datatables,Jquery Datatables,我对jQuery非常陌生,需要从jQuery Datatable在Excel和PDF中实现数据下载功能 Datatable已经实现了,因此只有我需要实现下载数据功能 我在谷歌上搜索了一下,但找不到好文章来更好地解释问题 以下是参考代码 HTML: <table class="table table-bordered" data-table-name="pqe-contact-dom"></table> var reportFunction = function(cod
<table class="table table-bordered" data-table-name="pqe-contact-dom"></table>
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'
})
});
在HTML中,我们使用数据表名=“pqe contact dom”将数据填充到表中,并且数据表代码写在JS文件中
JS文件代码:
<table class="table table-bordered" data-table-name="pqe-contact-dom"></table>
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'
})
});
var reportFunction=函数(代码){
$.ajax({
键入:“get”,
url:url,
数据类型:“json”,
成功:功能(数据){
var reportArray=新数组();
var reportArrayLen=data.length;
对于(var l=0;l
}
在这方面,我需要实现数据下载到Excel和PDF的功能,但我不清楚如何做到这一点。有人能帮我理解怎么做吗?第一件事第一,
这应该出现在JS代码中[忽略引号中的标记]
"dom": '<"pad5"CT><"clear"><lf<"clear">r<t>ip>',<br>
tableTools: {
"sSwfPath": "assets/swf/copy_csv_xls_pdf.swf"
}
“dom”:“”,
表格工具:{
“sSwfPath”:“assets/swf/copy_csv_xls_pdf.swf”
}
接下来,你需要这个文件。
copy_csv_xls_pdf.swf[确保路径与初始化的html/php文件一致]
接下来检查控制台f12是否有错误,并张贴错误。并提及您的DataTable版本和Jquery版本。我的版本是最新的
享受首先在TableTool插件文件夹中找到“copy_csv_xls_pdf.swf”文件的本地路径,并使用与“sSwfPath:”相同的路径,就像我在下面提到的那样:
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,
`enter code here`
'sPaginationType': 'full_numbers',
"tableTools": {
"sSwfPath": "/Scripts/TableTools-2.2.0/media/swf/copy_csv_xls_pdf.swf" // path where swf files is located.
}
})
});
向此添加任何内容时出错。我已经添加了这个,但是“tableTools”:{“sSwfPath”:“/swf/copy_csv_xls_pdf.swf”}但是出现错误甚至尝试添加按钮但不起作用Hi Rohit感谢您的回答,但我尝试添加“sSwfPath”:“assets/swf/copy_csv_xls_pdf.swf”,但它给出了错误。能否请您使用我在问题中提到的相同代码进行简要说明,这将很有帮助,并查看您是否将此文件显示为“assets/swf/copy\u csv\u xls\u pdf.swf”,如果没有,则您的浏览器控制台将出现错误