JavaScript Web页面表格导出到Word、Excel

  1. 一、  页面表格导入excel
  2. 1、js的方法
  3. A、将整个表格拷贝到EXCEL中,这种方法比较好用,还简单
  4. function method1(tableid) {
  5.     var curTbl = document.getElementById(tableid);
  6.     var oXL = new ActiveXObject("Excel.Application");
  7.     var oWB = oXL.Workbooks.Add();
  8.     var oSheet = oWB.ActiveSheet;
  9.     var sel = document.body.createTextRange();
  10.     sel.moveToElementText(curTbl);
  11.     sel.select();
  12.     sel.execCommand("Copy");
  13.     oSheet.Paste();
  14.     oXL.Visible = true;
  15. }
  16.  B、读取表格中每个单元到EXCEL中:
  17. function method2(tableid)
  18. {
  19.     var curTbl = document.getElementById(tableid);
  20.     var oXL = new ActiveXObject("Excel.Application");
  21.     var oWB = oXL.Workbooks.Add();
  22.     var oSheet = oWB.ActiveSheet;
  23.     var Lenr = curTbl.rows.length;
  24.     for (i = 0; i < Lenr; i++)
  25.     {
  26.         var Lenc = curTbl.rows(i).cells.length;
  27.         for (j = 0; j < Lenc; j++)
  28.         {
  29.             oSheet.Cells(i + 1, j + 1).value = curTbl.rows(i).cells(j).innerText;
  30.         }
  31.     }
  32.     oXL.Visible = true;
  33. }
  34.  c、把表格输出到另一个页面,然后存成cvs格式
  35. function getXlsFromTbl(inTblId, inWindow)
  36. {
  37.     try {
  38.         var allStr = "";
  39.         var curStr = "";
  40.         if (inTblId != null && inTblId != "" && inTblId != "null") {
  41.             curStr = getTblData(inTblId, inWindow);
  42.         }
  43.         if (curStr != null) {
  44.             allStr += curStr;
  45.         }
  46.         else {
  47.             alert("你要导出的表不存在");
  48.             return;
  49.         }
  50.         var fileName = getExcelFileName();
  51.         doFileExport(fileName, allStr);
  52.     }
  53.     catch(e) {
  54.         alert("导出发生异常:" + e.name + "->" + e.description + "!");
  55.     }
  56. }
  57. function getTblData(inTbl, inWindow) {
  58.     var rows = 0;
  59.     var tblDocument = document;
  60.     if (!!inWindow && inWindow != "") {
  61.         if (!document.all(inWindow)) {
  62.             return null;
  63.         }
  64.         else {
  65.             tblDocument = eval(inWindow).document;
  66.         }
  67.     }
  68.     var curTbl = tblDocument.getElementById(inTbl);
  69.     var outStr = "";
  70.     if (curTbl != null) {
  71.         for (var j = 0; j < curTbl.rows.length; j++) {
  72.             for (var i = 0; i < curTbl.rows[j].cells.length; i++) {
  73.                 if (i == 0 && rows > 0) {
  74.                     outStr += " /t";
  75.                     rows -= 1;
  76.                 }
  77.                 outStr += curTbl.rows[j].cells[i].innerText + "/t";
  78.                 if (curTbl.rows[j].cells[i].colSpan > 1) {
  79.                     for (var k = 0; k < curTbl.rows[j].cells[i].colSpan - 1; k++) {
  80.                         outStr += " /t";
  81.                     }
  82.                 }
  83.                 if (i == 0) {
  84.                     if (rows == 0 && curTbl.rows[j].cells[i].rowSpan > 1) {
  85.                         rows = curTbl.rows[j].cells[i].rowSpan - 1;
  86.                     }
  87.                 }
  88.             }
  89.             outStr += "/r/n";
  90.         }
  91.     }
  92.     else {
  93.         outStr = null;
  94.         alert(inTbl + "不存在 !");
  95.     }
  96.     return outStr;
  97. }
  98. function getExcelFileName() {
  99.     var d = new Date();
  100.     var curYear = d.getYear();
  101.     var curMonth = "" + (d.getMonth() + 1);
  102.     var curDate = "" + d.getDate();
  103.     var curHour = "" + d.getHours();
  104.     var curMinute = "" + d.getMinutes();
  105.     var curSecond = "" + d.getSeconds();
  106.     if (curMonth.length == 1) {
  107.         curMonth = "0" + curMonth;
  108.     }
  109.     if (curDate.length == 1) {
  110.         curDate = "0" + curDate;
  111.     }
  112.     if (curHour.length == 1) {
  113.         curHour = "0" + curHour;
  114.     }
  115.     if (curMinute.length == 1) {
  116.         curMinute = "0" + curMinute;
  117.     }
  118.     if (curSecond.length == 1) {
  119.         curSecond = "0" + curSecond;
  120.     }
  121.     var fileName = "table" + "_" + curYear + curMonth + curDate + "_"
  122.             + curHour + curMinute + curSecond + ".csv";
  123.     return fileName;
  124. }
  125. function doFileExport(inName, inStr) {
  126.     var xlsWin = null;
  127.     if (!!document.all("glbHideFrm")) {
  128.         xlsWin = glbHideFrm;
  129.     }
  130.     else {
  131.         var width = 6;
  132.         var height = 4;
  133.        var openPara = "left=" + (window.screen.width / 2 - width / 2)
  134.                 + ",top=" + (window.screen.height / 2 - height / 2)
  135.                 + ",scrollbars=no,width=" + width + ",height=" + height;
  136.         xlsWin = window.open("""_blank", openPara);
  137.     }
  138.     xlsWin.document.write(inStr);
  139.     xlsWin.document.close();
  140.     xlsWin.document.execCommand('Saveas'true, inName);
  141.     xlsWin.close();
  142. }
  143. 二、  页面表格导入word
  144. function exportword(tableid) {
  145.     var curTbl = document.getElementById(tableid);   
  146.     var   oWD   =   new   ActiveXObject("Word.Application");   
  147.     var   oDC   =   oWD.Documents.Add("",0,1);   
  148.     var   oRange   =oDC.Range(0,1);   
  149.     var   sel   =   document.body.createTextRange();   
  150.       sel.moveToElementText(curTbl);   
  151.       sel.select();   
  152.       sel.execCommand("Copy");   
  153.       oRange.Paste();   
  154.       oWD.Application.Visible   =   true;
  155. }
  156. 其中的tableid就是要导出数据的表格id。
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值