Home >Web Front-end >JS Tutorial >js exports the table tag of the page to csv
This article mainly introduces about js exporting the table tag of the page to csv. It has a certain reference value. Now I share it with you. Friends in need can refer to it
// Using this saving method, the table must embed a p and cannot have any other elements, otherwise other data will appear when downloading via ie
//tableid, title is the file name of the saved file
function saveCode(tableid, title) { var winname; try { if (navigator.userAgent.indexOf("MSIE") > 0) //IE浏览器 { var strHTML = $("#" + tableid).parent().html(); //alert("IE浏览器"); winname = window.open("ToExcel", "_blank", 'top=10000'); winname.document.open('text/html', 'replace'); winname.document.write("<style>"); winname.document.write("table{border:solid 1px #000;text-align:center;border-collapse:collapse; border-spacing:0;}"); winname.document.write("table td{border:solid 1px #000;text-align:center;}"); winname.document.write("table th{border:solid 1px #000;text-align:center;}"); winname.document.write("</style>"); winname.document.write(strHTML); winname.document.execCommand('SaveAs', '', title + '.xls'); document.execCommand("ClearAuthenticationCache"); winname.close(); } else if (isFirefox = navigator.userAgent.indexOf("Firefox") > 0) //Firefox { //alert("Firefox"); var str = getTblDataByFirefox(tableid, this); //支持中文 var uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str); var downloadLink = document.createElement("a"); downloadLink.href = uri; downloadLink.download = title + ".csv"; document.body.appendChild(downloadLink); downloadLink.click(); document.body.removeChild(downloadLink); } else //Google Chrome { //alert("Google Chrome等浏览器"); var str = getTblData(tableid, this); //支持中文 var uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str); var downloadLink = document.createElement("a"); downloadLink.href = uri; downloadLink.download = title + ".csv"; document.body.appendChild(downloadLink); downloadLink.click(); document.body.removeChild(downloadLink); } } catch (e) { alert(e.Message); return false; } return false; } function getTblData(inTbl, inWindow) { var rows = 0; var tblDocument = document; tblDocument = eval(inWindow).document; var curTbl = tblDocument.getElementById(inTbl); var outStr = ""; if (curTbl != null) { for (var j = 0; j < curTbl.rows.length; j++) { for (var i = 0; i < curTbl.rows[j].cells.length; i++) { if (i == 0 && rows > 0) { outStr += ","; rows -= 1; } outStr +=curTbl.rows[j].cells[i].innerText + ","; if (curTbl.rows[j].cells[i].colSpan > 1) { for (var k = 0; k < curTbl.rows[j].cells[i].colSpan - 1; k++) { outStr += ","; } } if (i == 0) { if (rows == 0 && curTbl.rows[j].cells[i].rowSpan > 1) { rows = curTbl.rows[j].cells[i].rowSpan - 1; } } } outStr += "\r\n";//换行 } } else { outStr = null; alert(allPage.noData); } return outStr; }
If you encounter some situations where you need to export data during development, you can try this method (ps: Arabic language has bugs and it is not recommended to use it)
The above is the entire content of this article, I hope it will be useful for everyone’s learning. Help, please pay attention to the PHP Chinese website for more related content!
Related recommendations:
Parsing of JavaScript Error objects
js implements simple click-on-image loop playback
The above is the detailed content of js exports the table tag of the page to csv. For more information, please follow other related articles on the PHP Chinese website!