Rumah >hujung hadapan web >html tutorial >Bagaimana untuk memindahkan Html ke exel
Cara memindahkan HTML ke Excel memerlukan contoh kod khusus
Pengenalan:
Dalam kerja sebenar, kadangkala kita perlu mengeksport data dalam halaman web ke format Excel. HTML ialah bahasa penanda web biasa, manakala Excel ialah perisian hamparan yang biasa digunakan Format kedua-duanya berbeza, jadi penukaran diperlukan. Artikel ini akan memperkenalkan cara menggunakan JavaScript dan perpustakaan pihak ketiga untuk merealisasikan fungsi memindahkan HTML ke fail Excel, dan memberikan contoh kod khusus.
1. Gunakan JavaScript untuk memindahkan HTML ke Excel
<table id="myTable"> <tr> <th>姓名</th> <th>年龄</th> <th>性别</th> </tr> <tr> <td>张三</td> <td>25</td> <td>男</td> </tr> <tr> <td>李四</td> <td>30</td> <td>女</td> </tr> </table>
<button onclick="exportToExcel()">导出Excel</button>
Seterusnya, kita perlu menambah pendengar acara untuk butang untuk mencetuskan fungsi eksport. Gunakan JavaScript untuk menulis kod berikut:
function exportToExcel() { // 导出表格逻辑 }
(1) Cipta buku kerja Excel baharu:
var wb = new ExcelJS.Workbook(); var ws = wb.addWorksheet('Sheet 1');
(2) Lelaran melalui semua baris dan lajur dalam jadual HTML dan isikan data ke lembaran kerja Excel Medium :
var rows = document.getElementById("myTable").rows; for (var i = 0; i < rows.length; i++) { var cells = rows[i].cells; for (var j = 0; j < cells.length; j++) { ws.getCell(i + 1, j + 1).value = cells[j].innerText; // 根据需要设置单元格样式 ws.getCell(i + 1, j + 1).alignment = { horizontal: 'left' }; } }
(3) Simpan fail Excel:
wb.xlsx.writeBuffer().then(function(buffer) { saveAs(new Blob([buffer], { type: 'application/octet-stream' }), 'data.xlsx'); });
Tambahkan kod ini pada fungsi "exportToExcel", kod lengkap adalah seperti berikut:
function exportToExcel() { var wb = new ExcelJS.Workbook(); var ws = wb.addWorksheet('Sheet 1'); var rows = document.getElementById("myTable").rows; for (var i = 0; i < rows.length; i++) { var cells = rows[i].cells; for (var j = 0; j < cells.length; j++) { ws.getCell(i + 1, j + 1).value = cells[j].innerText; ws.getCell(i + 1, j + 1).alignment = { horizontal: 'left' }; } } wb.xlsx.writeBuffer().then(function(buffer) { saveAs(new Blob([buffer], { type: 'application/octet-stream' }), 'data.xlsx'); }); }
2. Gunakan perpustakaan pihak ketiga untuk memindahkan HTML ke Excel
Dalam tambahan kepada JavaScript asli Selain daripada operasi, kami juga boleh menggunakan perpustakaan pihak ketiga untuk merealisasikan fungsi memindahkan HTML ke Excel, seperti perpustakaan "AlaSQL". Berikut ialah kod khusus untuk menggunakan perpustakaan AlaSQL:
<script src="https://cdn.jsdelivr.net/npm/alasql"></script> <script src="https://cdn.jsdelivr.net/npm/exceljs"></script>
function exportToExcel() { var tableData = []; var rows = document.getElementById("myTable").rows; for (var i = 0; i < rows.length; i++) { var rowData = []; var cells = rows[i].cells; for (var j = 0; j < cells.length; j++) { rowData.push(cells[j].innerText); } tableData.push(rowData); } var opts = { sheetid: 'Sheet 1', headers: true, skipHeader: true }; var res = alasql('SELECT * INTO XLSX("data.xlsx",?) FROM ?', [opts, [tableData]]); }
<button onclick="exportToExcel()">导出Excel</button>
Kod contoh fail HTML yang lengkap adalah seperti berikut:
rrmmary :
Artikel ini memperkenalkan cara menggunakan JavaScript dan perpustakaan pihak ketiga untuk memindahkan HTML ke fail Excel, dan memberikan contoh kod khusus. Melalui kod ini, kami boleh memindahkan data pada halaman web ke format Excel dengan mudah untuk memenuhi keperluan eksport dalam kerja sebenar. Semoga artikel ini bermanfaat kepada semua.
Atas ialah kandungan terperinci Bagaimana untuk memindahkan Html ke exel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!