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. [转帖]MyCat教程【简单介绍】

    MyCat教程[简单介绍] 2019-10-15 10:27:23 波波烤鸭 阅读数 618 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. ...

  2. php实现映射

    目录 映射 实现 链表实现: 二叉树实现 复杂度分析 映射 映射,或者射影,在数学及相关的领域经常等同于函数.基于此,部分映射就相当于部分函数,而完全映射相当于完全函数. 映射(Map)是用于存取键值 ...

  3. python离线安装外部库(第三方库)

    在官网下好外部库,解压后,点击解压后的文件夹,按住shift 右击在命令行中执行 输入 python setup.py install

  4. python基础 — 链接 Mysql 创建 数据库和创表

    重点: 1. 链接服务器的数据库 2. 创建表和格式 3. 插入多行数据 import pymysql try: host='xxx' user='xxx' passwd='xxx' db='test ...

  5. TZOJ3591这个真不会

    #include<stdio.h> int main() { ],b[],c,x,y; scanf("%d",&t); while(t--) { c=; x=; ...

  6. PB笔记之数据窗口可编辑的条件

    1.列的tab order为0,列不能获得焦点2.dw_control.object.datawindow.readonly="yes"3.DW.Object.<Column ...

  7. Yii2.0 手动添加扩展 redis为例

    手动下载yii2-redis扩展包(https://github.com/yiisoft/yii2-redis )并解压 将解压后的文件移至/vebdor/yiisoft命名为yii2-redis 打 ...

  8. <a>的javascript+jquery编程实例之删除(定位节点与事件绑定)

    相关jquery方法 parent(), remove() //上传图片 article_create.js article_edit.js function uploadAttachment() { ...

  9. Gogs + Drone 实现CI/CD(CD)

    前文已经实现CI部分,本文继续以Asp.Net Core实现CD部分. 创建gogs仓库 首先在gogs创建一个空项目drone-ci-demo,本地新建一个asp.net core项目,并且在与.c ...

  10. jenkins pipeline中获取shell命令的标准输出或者状态

    //获取标准输出//第一种 result = sh returnStdout: true ,script: "<shell command>" result = res ...