是否可以使用JavaScript将数据从asp.net的控件导出为可移植文档格式? 我试图这样做,但我没有做到。
答案 0 :(得分:1)
<script type="text/javascript">
$(document).ready(function () {
$(function () {
var doc = new jsPDF();
var specialElementHandlers = {
'#toPDF': function (element, renderer) {
return true;
}
};
$('#btnExport').click(function () {
var table = tableToJson($('#tblEmpDetails').get(0));
var doc = new jsPDF('l', 'pt', 'a1', true);
doc.cellInitialize();
$.each(table, function (i, row) {
doc.setFontSize(15);
console.debug(row);
$.each(row, function (j, cell) {
doc.cell(100, 50, 275, 50, cell, i);
});
});
doc.save('sample-file.pdf');
});
function tableToJson(table) {
debugger;
var data = [];
// first row needs to be headers
var headers = [];
var tb = document.getElementById('tblEmpDetails');
var NoOfcolumns = tb.rows[0].cells.length;
//var lastrow = document.getElementById('tblEmpDetails').rows;
for (var i = 0; i < NoOfcolumns - 1; i++) {
headers[i] = table.rows[0].cells[i].innerHTML.toLowerCase().replace(/ /gi, '');
}
// go through cells
for (var i = 0; i < table.rows.length; i++) {
var tableRow = table.rows[i];
var rowData = {};
for (var j = 0; j < NoOfcolumns - 1; j++) {
rowData[headers[j]] = tableRow.cells[j].innerHTML;
}
data.push(rowData);
}
return data;
}
// doc.save('sample-file.pdf');
// });
});
});
</script>
答案 1 :(得分:0)
使用项目模板,请参阅下面的示例。
http://www.java2s.com/Tutorial/ASP.NET/0380__Data-Binding/UseaListViewcontroltorenderanHTMLtable.htm
然后,您可以使用第三方转换工具(如ABCPDF等)轻松将HTML转换为PDF。