這篇文章主要介紹了JS調用頁面表格導出excel的具體實現,需要的朋友可以參考下
使用JS方法調用頁面表格導出excel有很大的限制: 1、目前試了幾個浏覽器,只有IE支持, 2、點擊 工具---安全---自定義級別---ActiveX 相關選項啟用 下面是html代碼 代碼如下: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> <html> <head> <script language="javascript"> var idTmr = ""; // 函數功能:復制表格到Excel中 // 參 數:tableID 表的id function CellToTable(tableID) { var tid=document.getElementById(tableID); // 加載ActiveX控件,獲取Excel句柄 var exApp = new ActiveXObject("Excel.Application"); // 創建一個Excel文件 var owb = exApp.WorkBooks.add(); // 獲取sheet1句柄CA var exSheet = exApp.ActiveWorkBook.WorkSheets(1); // 設置sheet1的名稱 exSheet.name="演示復制表格到Excel中"; // copy指定的表格 var sel=document.body.createTextRange(); sel.moveToElementText(tid); sel.select(); sel.execCommand("Copy"); exSheet.Paste();// 粘貼到sheet中 //exApp.save();// 彈出保存對話框,保存Excel文件 exApp.Visible = false; var fname = exApp.Application.GetSaveAsFilename("save.xls", "Excel Spreadsheets (*.xls), *.xls"); owb.SaveAs(fname); exApp.Quit();// 退出Excel實例 exApp = null; // 調用Cleanup()進行垃圾回收 idTmr = window.setInterval("Cleanup();",10); } // 函數功能:殺掉Excel進程 function Cleanup() { window.clearInterval(idTmr); CollectGarbage(); } </script> </head> <body> <table width="307" border="1" cellspacing="0" cellpadding="0" id="tableToExcel" name="tableName"> <tr bgcolor="#99CCCC"> <td width="66" rowspan="4" bgcolor="#33FF99">吉林的長春</td> <td width="67" rowspan="4" bgcolor="#33FF99">遼寧的沈陽</td> <td width="94" rowspan="4" bgcolor="#33FF99">黑龍江的哈爾濱</td> <td width="30" rowspan="4" bgcolor="#33FF99">北京</td> <td width="38" bgcolor="#66CC99">海澱</td> </tr> <tr bgcolor="#99CCCC"> <td bgcolor="#66CC99">吉林-長春</td> </tr> <tr bgcolor="#99CCCC"> <td bgcolor="#66CC99">遼寧-沈陽</td> </tr> <tr bgcolor="#99CCCC"> <td bgcolor="#66CC99">黑龍江-哈爾濱</td> </tr> <tr bgcolor="#99CCCC"> <td colspan="5">演示javascrīpt對表格copy的處理過程(推薦) </td> </tr> <tr bgcolor="#99CCCC"> <td colspan="5"><label> <div align="center"> <input name="textfield" type="text" value="單行文本框控件" size="30"/> </div> </label></td> </tr> </table> <br> <input type="submit" name="Submit3" value="點擊復制表格到Excel中" onclick= "CellToTable('tableToExcel')" /> </body> </html>