最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

js把页面的table标签导出为csv

来源:懂视网 责编:小采 时间:2020-11-27 19:34:10
文档

js把页面的table标签导出为csv

js把页面的table标签导出为csv:这篇文章主要介绍了关于js把页面的table标签导出为csv,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下// 使用该保存方法,table必须外嵌一个p且不能有任何其他元素 否则ie下载会出现其他数据 //tableid , title 为文件保存的文件名f
推荐度:
导读js把页面的table标签导出为csv:这篇文章主要介绍了关于js把页面的table标签导出为csv,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下// 使用该保存方法,table必须外嵌一个p且不能有任何其他元素 否则ie下载会出现其他数据 //tableid , title 为文件保存的文件名f

这篇文章主要介绍了关于js把页面的table标签导出为csv,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

// 使用该保存方法,table必须外嵌一个p且不能有任何其他元素 否则ie下载会出现其他数据
 //tableid , title 为文件保存的文件名

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;
}

  开发中遇到一些需要导出数据之类的可以试试该方式 (ps:阿拉伯语言有bug不建议使用)

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

js把页面的table标签导出为csv

js把页面的table标签导出为csv:这篇文章主要介绍了关于js把页面的table标签导出为csv,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下// 使用该保存方法,table必须外嵌一个p且不能有任何其他元素 否则ie下载会出现其他数据 //tableid , title 为文件保存的文件名f
推荐度:
标签: 保存 js 导出为
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top