码迷,mamicode.com
首页 > 其他好文 > 详细

导出excel

时间:2017-08-24 19:44:34      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:code   .so   innerhtml   body   dex   tostring   地址   utf-8   tag   

1.后台实现

  导出成功后后台返给url,那个url就是导出的那个excel

   前端做出点击导出,弹出下载目录,然后下载

    直接window.location.href=url;(在当前页打开excel的地址)

2,js实现

function exportFun(){
      var row=[0,8];//你不要的行的坐标
      var line=[0,8];//你不需要的列的坐标
      exportExcel(tab,‘导出,row,line);
    }
如果你不传入row,line,导出全部的数据 function exportExcel(tableID,fileName,row,line) {
var agent = navigator.userAgent.toLowerCase(); var isIE = /(msie\s|trident.*rv:)([\w.]+)/.test(agent); if (isIE) { alert("暂不支持IE内核的浏览器"); } else { var table = document.getElementById(tableID); var oTh = table.getElementsByTagName(th); var data = []; data[0] = []; for(var i = 0; i < oTh.length; i++) { // 标题th强制导出 if(line && inArray(i, line)) { continue; } data[0].push(oTh[i].innerHTML) } var oTr = table.getElementsByTagName(tr); for(var i = 1; i < oTr.length; i++) { if(row && inArray(i,row)) { continue; } var arr = []; var oTd = oTr[i].getElementsByTagName(td); for (var j = 0; j < oTd.length; j++) { if(line && inArray(j, line)) { continue; } arr.push(oTd[j].innerHTML.replace(\n, )); } data.push(arr); } var str = ‘‘; data.forEach(function(arr, index){ str += arr.toString() + \n; }) str = encodeURIComponent(str); //解决换行符无法识别问题 var url = data:text/txt;charset=utf-8,\ufeff+ str; var downloadLink = document.createElement("a"); downloadLink.href = url; downloadLink.download = fileName+".xlsx"; document.body.appendChild(downloadLink); downloadLink.click(); downloadLink.remove(); } } function inArray(target, arr) { // 不适用于引用数据类型 return arr.some(function(elem, index) { if (target === elem) { return true; } }) }

 

  

导出excel

标签:code   .so   innerhtml   body   dex   tostring   地址   utf-8   tag   

原文地址:http://www.cnblogs.com/SunShineM/p/7424363.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!