1. <html>
  2. <head>
  3. <script type="text/javascript" language="javascript">
  4. var idTmr;
  5. function method1(tableid) {//整个表格拷贝到EXCEL中
  6. var curTbl = document.getElementById(tableid);
  7. var oXL = new ActiveXObject("Excel.Application");
  8. //创建AX对象excel
  9. var oWB = oXL.Workbooks.Add();
  10. //获取workbook对象
  11. var xlsheet = oWB.Worksheets(1);
  12. //激活当前sheet
  13. var sel = document.body.createTextRange();
  14. sel.moveToElementText(curTbl);
  15. //把表格中的内容移到TextRange中
  16. sel.select();
  17. //全选TextRange中内容
  18. sel.execCommand("Copy");
  19. //复制TextRange中内容
  20. xlsheet.Paste();
  21. //粘贴到活动的EXCEL中
  22. oXL.Visible = true;
  23. //设置excel可见属性
  24. try {
  25. var fname = oXL.Application.GetSaveAsFilename("将Table导出到Excel.xls", "Excel Spreadsheets (*.xls), *.xls");
  26. } catch (e) {
  27. print("Nested catch caught " + e);
  28. } finally {
  29. oWB.SaveAs(fname);
  30. oWB.Close(savechanges = false);
  31. //xls.visible = false;
  32. oXL.Quit();
  33. oXL = null;
  34. //结束excel进程,退出完成
  35. //window.setInterval("Cleanup();",1);
  36. idTmr = window.setInterval("Cleanup();", 1);
  37. }
  38. }
  39. function Cleanup() {
  40. window.clearInterval(idTmr);
  41. CollectGarbage();
  42. }
  43. </script>
  44. </head>
  45. <body>
  46. <table id="ta">
  47. <tr>
  48. <td>1</td><td>admin</td>
  49. <td>23</td><td>程序员</td>
  50. <td>天津</td><td>admin@kali.com</td>
  51. </tr>
  52. <tr>
  53. <td>2</td><td>guest</td>
  54. <td>23</td><td>测试员</td>
  55. <td>北京</td><td>guest@kali.com</td>
  56. </tr>
  57. </table>
  58. <input id="Button1" type="button" value="导出EXCEL"
  59. onclick="javascript:method1('ta')" />
  60. </body>
  61. </html>
  62. <html>
    <head>
    <script type="text/javascript" language="javascript">
    var idTmr;
    function method1(tableid) {//整个表格拷贝到EXCEL中
    var curTbl = document.getElementById(tableid);
    var oXL = new ActiveXObject("Excel.Application");
    //创建AX对象excel
    var oWB = oXL.Workbooks.Add();
    //获取workbook对象
    var xlsheet = oWB.Worksheets(1);
    //激活当前sheet
    var sel = document.body.createTextRange();
    sel.moveToElementText(curTbl);
    //把表格中的内容移到TextRange中
    sel.select();
    //全选TextRange中内容
    sel.execCommand("Copy");
    //复制TextRange中内容
    xlsheet.Paste();
    //粘贴到活动的EXCEL中
    oXL.Visible = true;
    //设置excel可见属性 try {
    var fname = oXL.Application.GetSaveAsFilename("将Table导出到Excel.xls", "Excel Spreadsheets (*.xls), *.xls");
    } catch (e) {
    print("Nested catch caught " + e);
    } finally {
    oWB.SaveAs(fname); oWB.Close(savechanges = false);
    //xls.visible = false;
    oXL.Quit();
    oXL = null;
    //结束excel进程,退出完成
    //window.setInterval("Cleanup();",1);
    idTmr = window.setInterval("Cleanup();", 1); }
    }
    function Cleanup() {
    window.clearInterval(idTmr);
    CollectGarbage();
    }
    </script> </head>
    <body>
    <table id="ta">
    <tr>
    <td>1</td><td>admin</td>
    <td>23</td><td>程序员</td>
    <td>天津</td><td>admin@kali.com</td>
    </tr>
    <tr>
    <td>2</td><td>guest</td>
    <td>23</td><td>测试员</td>
    <td>北京</td><td>guest@kali.com</td>
    </tr>
    </table>
    <input id="Button1" type="button" value="导出EXCEL"
    onclick="javascript:method1('ta')" />
    </body>
    </html>

或者:

  1. 、<html>
  2. <head>
  3. <script type="text/javascript">
  4. function dataToExcel(tableid) {//整个表格拷贝到EXCEL中
  5. var curTbl = document.getElementById(tableid);
  6. var oXL;
  7. try {
  8. oXL = GetObject("", "Excel.Application");
  9. }
  10. catch (E) {
  11. try {
  12. oXL = new ActiveXObject("Excel.Application");
  13. }
  14. catch (E2) {
  15. //alert("Please confirm:\n1.Microsoft Excel has been installed.\n2.Internet
  16. Options=>Security=>Setting \"Enable unsafe ActiveX\"");
  17. alert("请确认:\n1.机器上Excel已经安装.\n2.Internet 选项=>安全=>Internet \"对
  18. 未标记为安全的ActiveX控件进行初始化和脚本运行,设定为启用\"");
  19. return;
  20. }
  21. }
  22. //创建AX对象excel
  23. var oWB = oXL.Workbooks.Add();
  24. //获取workbook对象
  25. var oSheet = oWB.ActiveSheet;
  26. //激活当前sheet
  27. var sel = document.body.createTextRange();
  28. sel.moveToElementText(curTbl);
  29. //把表格中的内容移到TextRange中
  30. sel.select();
  31. //全选TextRange中内容
  32. sel.execCommand("Copy");
  33. //复制TextRange中内容
  34. oSheet.Paste();
  35. //粘贴到活动的EXCEL中
  36. oXL.Visible = true;
  37. //设置excel可见属性
  38. }
  39. </script>
  40. </head>
  41. <body>
  42. <table id="ta">
  43. <tr>
  44. <td>1</td><td>admin</td>
  45. <td>23</td><td>程序员</td>
  46. <td>天津</td><td>admin@kali.com</td>
  47. </tr>
  48. <tr>
  49. <td>2</td><td>guest</td>
  50. <td>23</td><td>测试员</td>
  51. <td>北京</td><td>guest@kali.com</td>
  52. </tr>
  53. </table>
  54. <input id="Button1" type="button" value="导出EXCEL"
  55. onclick="javascript:dataToExcel('ta')" />
  56. </body>
  57. </html>  

    原文转自: http://blog.csdn.net/kalision/article/details/8350506

    例外集中方法 :
    http://www.cnblogs.com/QXHao/p/5995792.html

JS 导出网页中Table内容到excel的更多相关文章

  1. 导出网页中的table到excel

    导出网页中的table到excel的两种简便方法: 1. 纯 JavaScript 方法,缺点只支持IE浏览器 var elTable = document.getElementById(" ...

  2. js将HTML中table导出到EXCEL word (只支持IE) 另用php 配合AJAX可以支持所有浏览器

    转载请注明来源:https://www.cnblogs.com/hookjc/ <HTML>     <HEAD>       <title>WEB页面导出为EXC ...

  3. C#读取Excel表格数据到DataGridView中和导出DataGridView中的数据到Excel

    其实想在datagridview中显示excel表格中的数据跟读取数据库中的数据没什么差别,只不过是创建数据库连接的时候连接字段稍有差别. private void btnShow_Click(obj ...

  4. javascript怎么获取指定url网页中的内容

    javascript怎么获取指定url网页中的内容 一.总结 一句话总结:推荐jquery中ajax,简单方便. 1.js能跨域操作么? javascript出于安全机制不允许跨域操作的. 二.用ph ...

  5. 输出内容 document.write() 可用于直接向 HTML 输出流写内容。简单的说就是直接在网页中输出内容

    输出内容(document.write) document.write() 可用于直接向 HTML 输出流写内容.简单的说就是直接在网页中输出内容. 第一种:输出内容用""括起,直 ...

  6. prism.js——让网页中的代码更好看

    粗放的代码展示 有时候,网页中会插入代码.直接把代码放入<pre></pre>标签和<code></code>标签里,也算是可以在页面中显示出来. 比如 ...

  7. [原创]纯JS实现网页中多选复选框checkbox和单选radio的美化效果

    图片素材: 最终效果图: <html><title> 纯JS实现网页中多选复选框checkbox和单选radio的美化效果</title><head>& ...

  8. Ifvisible.js – 判断网页中的用户是闲置还是活动状态

    ifvisible.js 是一个跨浏览器.轻量级的方式,用户检查用户在浏览页面或正在与它进行交互.它可以处理活动状态,如在页面上空闲或活跃.您还可以使用 ifvisible.js 智能设置您的间隔,如 ...

  9. maven-bundle-plugin 2.4.0以下版本导出META-INF中的内容到MANIFEST.MF中

    今天终于把maven-bundle-plugin不能导出META-INF中的内容到Export-Package中的问题解决了,因为用到的第三方JAR包需要加载META-INF/XX/XX.xml这个内 ...

随机推荐

  1. netty-websocket简单的使用方法

    最便捷使用netty-websocket方法 1.pom添加依赖 <dependency> <groupId>org.yeauty</groupId> <ar ...

  2. python第一天---我要入个门

    """ 一个用户登录的案例 """ # 永远等待,直到用户输入值 # 变量 name_r = input("请输入用户名" ...

  3. 【Linux】一步一步学Linux——Linux版本(03)

    目录 00. 目录 01. Linux内核版本 02. Linux内核官方网站 03. Linux发行版本 04. Linux发行版本介绍 4.1 Ubuntu 4.2 RedHat 4.3 Debi ...

  4. Challenge & Growth —— 从这里开始

    做有挑战的事情,就从这里开始. 忘记这本书现在在哪儿了,以前还以为能祖祖辈辈留传,现在只能借助 Nowcoder 了.Now coder,Forever thinker. 想以自以为最优美的 code ...

  5. QuickJS 快速入门 (QuickJS QuickStart)

    1. QuickJS 快速入门 (QuickJS QuickStart) 1. QuickJS 快速入门 (QuickJS QuickStart) 1.1. 简介 1.2. 安装 1.3. 简单使用 ...

  6. logback配置文件模板

    <?xml version="1.0" encoding="UTF-8"?> <configuration debug="false ...

  7. css中哪些属性会脱离文档流

    一共有三个属性会使元素脱离文档流: (1)浮动 (2)绝对定位 (3)固定定位 元素脱离文档流会导致父元素高度塌陷,要修复高度塌陷问题,可以将子元素与父元素放在同一个BFC中

  8. BASIS小问题汇总1

    try to start SAP system but failed 2019-04-04 Symptom: when i tried to start SAP system, using the c ...

  9. Installation Manager1.8安装

    1.下载地址: https://www-01.ibm.com/marketing/iwm/iwm/web/download.do?S_PKG=500005026&source=swerpws- ...

  10. javascript动态添加html节点

    之前一直没怎么接触需要动态添加和删除html节点的项目,这次项目中用到了,也学习了. 在一个<table id="tab">标签中添加一个<tr id=" ...