gpt4 book ai didi

jquery - 如何启用jQgrid将数据导出为PDF/Excel

转载 作者:行者123 更新时间:2023-12-03 22:21:19 25 4
gpt4 key购买 nike

我是 jQuery/jQgrid 编码新手。我使用的 jQgrid 版本是 4.4.4 和 jQuery 1.8.3。我想在 jQgrid 中启用导出到 PDF/EXCEL 功能。为此,我引用了以下链接 - Click HereClick Here 。在此链接的基础上,我在jquery中开发了几行代码,如下所示:

   .jqGrid('navGrid', topPagerSelector, { edit: false, add: false, del: false, search: false, pdf: true}, {}, {}, {}, {}
}).jqGrid('navButtonAdd',topPagerSelector,{
id:'ExportToPDF',
caption:'',
title:'Export To Pdf',
onClickButton : function(e)
{
try {
$("#tbPOIL").jqGrid('excelExport', { tag: 'pdf', url: sRelativePath + '/rpt/poil.aspx' });
} catch (e) {
window.location = sRelativePath + '/rpt/poil.aspx&oper=pdf';
}
},
buttonicon: 'ui-icon-print'
});

但是这段代码无法正常工作。我在互联网谷歌上搜索了很多,但我没有得到有用和相关的信息来完成我的任务。有人知道该怎么做吗???

更新:我没有使用付费版本的 jqgrid。

最佳答案

这里有一个聪明的解决方案来保存 jqGrid数据作为 Excel 表:(您只需使用 GridID 和可选的 Filename 调用此函数)

var createExcelFromGrid = function(gridID,filename) {
var grid = $('#' + gridID);
var rowIDList = grid.getDataIDs();
var row = grid.getRowData(rowIDList[0]);
var colNames = [];
var i = 0;
for(var cName in row) {
colNames[i++] = cName; // Capture Column Names
}
var html = "";
for(var j=0;j<rowIDList.length;j++) {
row = grid.getRowData(rowIDList[j]); // Get Each Row
for(var i = 0 ; i<colNames.length ; i++ ) {
html += row[colNames[i]] + ';'; // Create a CSV delimited with ;
}
html += '\n';
}
html += '\n';

var a = document.createElement('a');
a.id = 'ExcelDL';
a.href = 'data:application/vnd.ms-excel,' + html;
a.download = filename ? filename + ".xls" : 'DataList.xls';
document.body.appendChild(a);
a.click(); // Downloads the excel document
document.getElementById('ExcelDL').remove();
}

我们首先创建一个CSV; 分隔的字符串。然后是anchor标签是使用某些属性创建的。最后click被调用a下载文件。

关于jquery - 如何启用jQgrid将数据导出为PDF/Excel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21494761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com