使用js代码将HTML Table导出为Excel的方法:

直接上源码

  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <script type="text/javascript" language="javascript">
  5. var idTmr;
  6. function getExplorer() {
  7. var explorer = window.navigator.userAgent ;
  8. //ie
  9. if (explorer.indexOf("MSIE") >= 0) {
  10. return 'ie';
  11. }
  12. //firefox
  13. else if (explorer.indexOf("Firefox") >= 0) {
  14. return 'Firefox';
  15. }
  16. //Chrome
  17. else if(explorer.indexOf("Chrome") >= 0){
  18. return 'Chrome';
  19. }
  20. //Opera
  21. else if(explorer.indexOf("Opera") >= 0){
  22. return 'Opera';
  23. }
  24. //Safari
  25. else if(explorer.indexOf("Safari") >= 0){
  26. return 'Safari';
  27. }
  28. }
  29. function method1(tableid) {//整个表格拷贝到EXCEL中
  30. if(getExplorer()=='ie')
  31. {
  32. var curTbl = document.getElementById(tableid);
  33. var oXL = new ActiveXObject("Excel.Application");
  34.  
  35. //创建AX对象excel
  36. var oWB = oXL.Workbooks.Add();
  37. //获取workbook对象
  38. var xlsheet = oWB.Worksheets(1);
  39. //激活当前sheet
  40. var sel = document.body.createTextRange();
  41. sel.moveToElementText(curTbl);
  42. //把表格中的内容移到TextRange中
  43. sel.select();
  44. //全选TextRange中内容
  45. sel.execCommand("Copy");
  46. //复制TextRange中内容
  47. xlsheet.Paste();
  48. //粘贴到活动的EXCEL中
  49. oXL.Visible = true;
  50. //设置excel可见属性
  51.  
  52. try {
  53. var fname = oXL.Application.GetSaveAsFilename("Excel.xls", "Excel Spreadsheets (*.xls), *.xls");
  54. } catch (e) {
  55. print("Nested catch caught " + e);
  56. } finally {
  57. oWB.SaveAs(fname);
  58.  
  59. oWB.Close(savechanges = false);
  60. //xls.visible = false;
  61. oXL.Quit();
  62. oXL = null;
  63. //结束excel进程,退出完成
  64. //window.setInterval("Cleanup();",1);
  65. idTmr = window.setInterval("Cleanup();", 1);
  66.  
  67. }
  68. }
  69. else
  70. {
  71. tableToExcel(tableid)
  72. }
  73. }
  74. function Cleanup() {
  75. window.clearInterval(idTmr);
  76. CollectGarbage();
  77. }
  78. var tableToExcel = (function() {
  79. var uri = 'data:application/vnd.ms-excel;base64,',
  80. template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><meta http-equiv="Content-Type" charset=utf-8"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>{table}</table></body></html>',
  81. base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) },
  82. format = function(s, c) {
  83. return s.replace(/{(\w+)}/g,
  84. function(m, p) { return c[p]; }) }
  85. return function(table, name) {
  86. if (!table.nodeType) table = document.getElementById(table)
  87. var ctx = {worksheet: name || 'Worksheet', table: table.innerHTML}
  88. window.location.href = uri + base64(format(template, ctx))
  89. }
  90. })()
  91. </script>
  92.  
  93. </head>
  94. <body>
  95. <table width="100%" cellspacing="0" cellpadding="0" border="1px" bgcolor="#fff" align="center" id="test">
  96. <tr>
  97. <th width="10%">调查案例</th>
  98. <th width="10%">公司名称</th>
  99. <th width="10%">地  址</th>
  100. <th width="5%">部门</th>
  101. <th width="5%">联系人</th>
  102. <th width="10%">联系方式</th>
  103. <th width="20%">具體情况</th>
  104. <th width="20%">问券填写</th>
  105. <th width="10%">提交时间</th>
  106. </tr>
  107. </table>
  108. <input id="Button1" type="button" value="导出EXCEL"
  109. onclick="javascript:method1('test')" style="padding:5px;margin-top:20px;"/>
  110. </body>
  111. </html>

-完-

HTML Table导出为Excel的方法的更多相关文章

  1. 使用js代码将HTML Table导出为Excel

    使用js代码将HTML Table导出为Excel的方法: 直接上源码 <html> <head> <meta http-equiv="Content-Type ...

  2. html table表格导出excel的方法 html5 table导出Excel HTML用JS导出Excel的五种方法 html中table导出Excel 前端开发 将table内容导出到excel HTML table导出到Excel中的解决办法 js实现table导出Excel,保留table样式

    先上代码   <script type="text/javascript" language="javascript">   var idTmr; ...

  3. 【ASP.NET】C# 将HTML中Table导出到Excel(TableToExcel)

    首先,说下应用场景 就是,把页面呈现的Table 导出到Excel中.其中使用的原理是 前台使用ajax调用aspx后台,传递过去参数值,导出.使用的组件是NPOI. 前台调用: <script ...

  4. Antd将Table导出为Excel

    Antd将Table导出为Excel 在最近的项目中,需要把表格中的数据导出给财务进行统计,网上很多一键导出的按钮都没用.经过东拼西凑,最终搞定了导出,自己封装了组件. import { File } ...

  5. MySQL要导出成excel的方法

    MySQL 要导出成 excel 文件很简单,执行类似这样的命令:   select * from 某个表 into outfile  'd:/文件名.xls';   上述命令你在服务器上执行,就导在 ...

  6. .Net直接将Web页面table导出到Excel

    项目管理系统有个统计表需要导出到Excel表中.常用的方法是在后台C#代码查询数据再写入Excel表中最后保存在目标路径. 为减轻数据库服务器的压力和保持页面的样式,能否直接将页面的表格直接导出到Ex ...

  7. Vue+element ui table 导出到excel

    需求: Vue+element UI table下的根据搜索条件导出当前所有数据 参考: https://blog.csdn.net/u010427666/article/details/792081 ...

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

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

  9. 将table导出为Excel的标准无乱码写法

    导出为Excel有很多种写法,对于一些复杂的格式,笔者喜欢在后台先拼成一个<table>,再使用Response输出. 如果数据中包含中文或者一些特殊字符,可很多不规范的写法都会导致页面乱 ...

随机推荐

  1. 文件内容统计——Linux wc命令

    有了该命令,就可以得到当前目录下所有符合条件的文件总数,如下: find -type f | wc -l 这个命令的功能也很好记,因为它功能很有限: wc -c filename:显示一个文件的字节数 ...

  2. U盘容量减少的解决办法

    今天是使用以前的U盘的时候发现原来4G的U盘容量居然只剩下了700M,不是说u盘的可用空间是700M,而是在电脑上面显示的总空间为700M.在电脑上面格式化之后也没起作用. 经过Google找到了在w ...

  3. 数据结构2 静态区间第K大/第K小

    给定数组$A[1...N]$, 区间$[L,R]$中第$K$大/小的数的指将$A[L...R]$中的数从大到小/从小到大排序后的第$K$个. "静态"指的是不带修改. 这个问题有多 ...

  4. Request 对象

    Request 对象用于检索从浏览器向服务器发送的请求中的信息. 1.使用Request对象的Browser属性,可以访问HttpBrowserCapabilities属性获得当前正在使用哪种类型的浏 ...

  5. 二项分布和Beta分布

    原文为: 二项分布和Beta分布 二项分布和Beta分布 In [15]: %pylab inline import pylab as pl import numpy as np from scipy ...

  6. linux 内核 RCU机制详解

    RCU(Read-Copy Update)是数据同步的一种方式,在当前的Linux内核中发挥着重要的作用.RCU主要针对的数据对象是链表,目的是提高遍历读取数据的效率,为了达到目的使用RCU机制读取数 ...

  7. BZOJ1915: [Usaco2010 Open]奶牛的跳格子游戏

    权限题,没有传送门. 这很显然是一道DP题,刚看完题目可能会比较懵逼.这道题如果不要求回去,那么就是一道很裸的DP题.但是本题要求回去而且回去的格子的前一个格必须是之前经过的. 先不考虑回去的路程,对 ...

  8. BZOJ2152:聪聪可可

    传送门 点分治常规题.练习模板 //OJ 2077 //by Cydiater //2016.9.23 #include <iostream> #include <cstdio> ...

  9. 【原】js 签到用日历

    最近做的一个项目中,需要用到一个日历来记录你的签到,网上找了一些,感觉挺庞大的,所以就自己写了一个,记录一下自己写这个日历的经过 html代码: <table cellspacing=" ...

  10. 【原】textarea 换行之间的转换

    在操纵表单的时候,如果你在textarea输入的内容是换行的,如果没有进行相应的装换,你输出的内容是不会跟着一起换行的.如果后台返回给你的数据是带有<br />换行符的, 那么在texta ...