前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >js导json数据到excel接口

js导json数据到excel接口

作者头像
用户1220053
发布2019-05-26 20:09:11
3.3K0
发布2019-05-26 20:09:11
举报
文章被收录于专栏:DT乱“码”
代码语言:javascript
复制
//参数说明:jsonData jsonData,  FileName 要导出的文件名  ,ShowLabel = 表头
function export2Excel(jsonData, FileName, ShowLabel) {  
	 if(jsonData=='' || jsonData == null){
		 alert("暂无数据无法导出!");
		 return;
	 }
	 if(FileName=='' || FileName == null){
		 alert("文件名设置错误!");
		 return;
	 }
	 if(ShowLabel=='' || ShowLabel == null){
		 alert("表头为空无法导出!");
		 return;
	 }
	
	var excel = '<table>';  
	//生成表头   
	var row = "<tr>";   
	for (var i = 0; i < ShowLabel.length; i++) {   
	    row += "<td>" + ShowLabel[i] + '</td>';   
	}   
	excel += row + "</tr>";  
	//循环生成表身   
	for (var i = 0; i < jsonData.length; i++) {   
	    var row = "<tr>";   
	    for (var j in jsonData[i]) {   
	        var td = jsonData[i][j];   
	        row += '<td>' + td + '</td>';   
	    }   
	    excel += row + "</tr>";   
	}  
	excel += "</table>";   
	console.log(excel);  
	//组装excel
	var excelFile = "<html xmlns:o='urn:schemas-microsoft-com:office:office' " + "xmlns:x='urn:schemas-microsoft-com:office:excel' xmlns='http://www.w3.org/TR/REC-html40'>";   
	excelFile += '<meta http-equiv="content-type" content="application/vnd.ms-excel; charset=UTF-8">';   
	excelFile += '<meta http-equiv="content-type" content="application/vnd.ms-excel';   
	excelFile += '; charset=UTF-8">';   
	excelFile += "<head>";   
	excelFile += "<!--[if gte mso 9]>";   
	excelFile += "<xml>";   
	excelFile += "<x:ExcelWorkbook>";   
	excelFile += "<x:ExcelWorksheets>";   
	excelFile += "<x:ExcelWorksheet>";   
	excelFile += "<x:Name>";   
	excelFile += "sheet";   
	excelFile += "</x:Name>";   
	excelFile += "<x:WorksheetOptions>";   
	excelFile += "<x:DisplayGridlines/>";   
	excelFile += "</x:WorksheetOptions>";   
	excelFile += "</x:ExcelWorksheet>";   
	excelFile += "</x:ExcelWorksheets>";   
	excelFile += "</x:ExcelWorkbook>";   
	excelFile += "</xml>";   
	excelFile += "<![endif]-->";   
	excelFile += "</head>";   
	excelFile += "<body>";   
	excelFile += excel;   
	excelFile += "</body>";   
	excelFile += "</html>";  
	var uri = 'data:application/vnd.ms-excel;charset=utf-8,' + encodeURIComponent(excelFile);   
	var link = document.createElement("a");   
	link.href = uri; link.style = "visibility:hidden";   
	link.download =  FileName+".xls";   
	document.body.appendChild(link);   
	link.click();   
	document.body.removeChild(link);   
}  
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档