在Excel文件中按顺序保存HTML表格数据

我将HTML表格数据转换为Excel CSV文件,我使用下面的代码

<script> function downloadCSV(csv, filename) { var csvFile; var downloadLink; // CSV file csvFile = new Blob([csv], {type: "text/csv"}); // Download link downloadLink = document.createElement("a"); // File name downloadLink.download = filename; // Create a link to the file downloadLink.href = window.URL.createObjectURL(csvFile); // Hide download link downloadLink.style.display = "none"; // Add the link to DOM document.body.appendChild(downloadLink); // Click download link downloadLink.click(); } function exportTableToCSV(filename) { var csv = []; var rows = document.querySelectorAll("#faqs tr"); for (var i = 0; i < rows.length; i++) { var row = [], cols = rows[i].querySelectorAll("td, th"); for (var j = 0; j < cols.length; j++) row.push(cols[j].innerText); csv.push(row.join(",")) } // Download CSV file downloadCSV(csv.join("\n"), filename); } </script> 

问题是,当这个脚本生成Excel表格时,它的格式不正确。

从图片中你可以看到问题栏的文本中包含逗号,逗号就是问题所在。 而所有的excel字段都不是我想要的格式。 我想列出与各列相关的所有数据,但“问题”栏混淆了脚本。

button:

  <button onclick="exportTableToCSV('faqs.csv')"> Export CSV</button> 

谢谢

数据在Excel中

  for (columnCounter = 0; columnCounter < totalColumns; columnCounter++) { // quote each column in order to escape any commas row.push('"' + cols[columnCounter].innerText + '"'); } 

https://jsbin.com/zepabey/edit?html,console,output