Cet article présente principalement l'exportation js de la balise table de la page vers csv. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer.
// En utilisant cette méthode de sauvegarde, le tableau doit intégrer un p et ne peut contenir aucun autre élément, sinon d'autres données apparaîtront lors du téléchargement via IE
//tableid, le titre est le nom du fichier du fichier enregistré
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; }
Vous pouvez essayer cette méthode si vous rencontrez quelque chose qui nécessite d'exporter des données pendant le développement (ps : la langue arabe a des bugs et il n'est pas recommandé de l'utiliser)
Le ci-dessus est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun. Utile, veuillez faire attention au site Web PHP chinois pour plus de contenu connexe !
Recommandations associées :
Analyse de l'objet d'erreur JavaScript
JS implémente une simple lecture en boucle par clic sur l'image
Convertir l'url au format JSON
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!