转载请注明来源:https://www.cnblogs.com/hookjc/

<HTML>  
  <HEAD>  
    <title>WEB页面导出为EXCEL文档的方法  
    </title>  
  </HEAD>  
<body>  
<BR>  
<table id = "PrintA" width="100%" border="1" cellspacing="0" cellpadding="0" bgcolor = "#61FF13">  
<TR style="text-align : center;">  
 <TD>单元格A</TD>  
 <TD>单元格A</TD>  
 <TD>单元格A</TD>  
 <TD>单元格A</TD>  
</TR>  
<TR>  
 <TD colSpan=4 style="text-align : center;"><font color="BLUE" face="Verdana">单元格合并行A</FONT></TD>  
</TR>  
</TABLE>  
<BR>  
<table id = "PrintB" width="100%" border="1" cellspacing="0" cellpadding="0">  
<TR style="text-align : center;">  
 <TD>单元格B</TD>  
 <TD>单元格B</TD>  
 <TD>单元格B</TD>  
 <TD>单元格B</TD>  
</TR>  
<TR>  
 <TD colSpan=4 style="text-align : center;">单元格合并行B</TD>  
</TR>  
</TABLE>  
<br><br><br>  
<input type="button" onclick="javascript:AllAreaWord();" value="导出页面指定区域内容到Word">  
<input type="button" onclick="javascript:AllAreaExcel();" value="导出页面指定区域内容到Excel">  
<input type="button" onclick="javascript:CellAreaExcel();" value="导出表单单元格内容到Excel">  
<SCRIPT LANGUAGE="javascript">  
 //指定页面区域内容导入Excel  
 function AllAreaExcel()   
 {  
  var oXL = new ActiveXObject("Excel.Application");   
  var oWB = oXL.Workbooks.Add();   
  var oSheet = oWB.ActiveSheet;    
  var sel=document.body.createTextRange();  
  sel.moveToElementText(PrintA);  
  sel.select();  
  sel.execCommand("Copy");  
  oSheet.Paste();  
  oXL.Visible = true;  
 }  
 //指定页面区域“单元格”内容导入Excel  
 function CellAreaExcel()   
 {  
  var oXL = new ActiveXObject("Excel.Application");   
  var oWB = oXL.Workbooks.Add();   
  var oSheet = oWB.ActiveSheet;   
  var Lenr = PrintA.rows.length;  
  for (i=0;i<Lenr;i++)   
  {   
   var Lenc = PrintA.rows(i).cells.length;   
   for (j=0;j<Lenc;j++)   
   {   
    oSheet.Cells(i+1,j+1).value = PrintA.rows(i).cells(j).innerText;   
   }   
  }   
  oXL.Visible = true;   
 }  
 
 //指定页面区域内容导入Word  
 function AllAreaWord()  
 {  
  var oWD = new ActiveXObject("Word.Application");  
  var oDC = oWD.Documents.Add("",0,1);  
  var oRange =oDC.Range(0,1);  
  var sel = document.body.createTextRange();  
  sel.moveToElementText(PrintA);  
  sel.select();  
  sel.execCommand("Copy");  
  oRange.Paste();  
  oWD.Application.Visible = true;  
  //window.close();  
 }  
</SCRIPT>  
</body></html>

--------------------------------------------------------------------------------------------------------------------

/*** ajax传到服务器端处理****/

/**
 * 导出电子表格
 *
 * @param NULL
 *
 * @return NULL
 */
 function _excel()
 {
  $code=preg_replace(
   array("/<td([^>]+)>/i","/TD>/","/<a[^>]+>/i","/<\/A>/i","/<td>([\d\.]+)<\/td>/i"),
   array("<td>","td>","","","<td x:num>$1</td>"),
   $_POST['tblCode']);
  header('Cache-Control: public');
  header('Content-type: application/vnd.ms-excel');
  header('Content-Disposition: filename=dfd.xls');$this->setVar('tblCode',$code);
 }

$_POST['tblCode']="<tbody><tr class=\"stattr0\"> <th>&nbsp;ertertert</th> <th>&nbsp;ertertert</th> <th>&nbsp;retertert</th> <th>&nbsp;ertert</th> <th>&nbsp;asdfasdf</th> <th>&nbsp;asadfasdf</th> <td>&nbsp;etretert</td> <td>&nbsp;ertert</td> </tr> <tr> <th>&nbsp;sadfasdfasdf</th> <td>&nbsp;496</td> <td>&nbsp;2642</td> <td>&nbsp;2489</td> <td>&nbsp;5131</td> <td>&nbsp;10.34</td> <td>&nbsp;5.98</td> <td>&nbsp;3</td> </tr> </tbody>";

来源:python脚本自动迁移

js将HTML中table导出到EXCEL word (只支持IE) 另用php 配合AJAX可以支持所有浏览器的更多相关文章

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

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

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

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

  3. HTML Table导出为Excel的方法

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

  4. 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; ...

  5. JS 导出网页中Table内容到excel

    <html> <head> <script type="text/javascript" language="javascript" ...

  6. 网站开发进阶(二十五)js如何将html表格导出为excel文件

    js如何将html表格导出为excel文件        赠人玫瑰,手留余香.若您感觉此篇博文对您有用,请花费2秒时间点个赞,您的鼓励是我不断前进的动力,共勉! jsp页面数据导出成excel的方法很 ...

  7. 网站开发进阶(三十一)js如何将html表格导出为excel文件(后记)

    js如何将html表格导出为excel文件(后记) 前言 项目前期做了个导出Excel表格的功能,但是经过测试发现只有在IE上才可以正确实现,在Chrome等浏览器中无法实现导出效果.经过上网搜索,尝 ...

  8. Antd将Table导出为Excel

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

  9. 支持IE,FireFox,Chrome三大主流浏览器,通过js+Flash方式将table导出Excel文件

    今天在做项目的时候,遇到了前端下载Excel的功能,结果原先的代码,如下: function generate_excel(tableid) {        var table = document ...

随机推荐

  1. css 快速入门 系列 —— 浮动

    浮动 以 mdn float 文档 为基础,逐一介绍浮动的本质.浮动的诸多特性.清除浮动以及块格式化上下文(bfc). 概念 当一个元素浮动之后,它会被移出正常的文档流,然后向左或者向右平移,一直平移 ...

  2. EFCore:关于DDD中值对象(Owns)无法更新数值

    最近使用DDD+EFCore时,使用EFCore提供的OwnsOne或者OwnsMany关联值对象保存数据,没想到遇到一个很奇怪的问题:值对象中的值竟然无法被EFCore保存!也没有抛出任何异常!我瞬 ...

  3. 使用 navigator.userAgent.toLowerCase() 区别 浏览器 类型

    userAgent 属性是一个只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值 var ua = navigator.userAgent.toLowerCase(); 返回的是个字符串 ...

  4. vue实现引用less,sass全局变量

    1.npm install sass-resources-loader --save-dev: 2.build/utils.js中,修改 function resolveResource(name) ...

  5. 移动端position:fixed 解决方案

    相信不少人做移动端项目的时候都会遇到position:fixed 的坑. 下面提供一个解决方法,不用引入任何其他的js库,纯css解决. 解决问题的关键就是:fixed元素内部必须嵌套一个positi ...

  6. 【Java】简单了解网络编程

    文章目录 网络编程 网络编程中有两个主要的问题 网络编程中的两个要素 通信要素一:IP和端口号 实例化InetAddress 两个常用方法 端口号 通信要素二:网络通信协议 实现TCP的网络编程 例子 ...

  7. 5.12-jsp分页功能学习

    1.分页功能相关资料查询 分页须知知识点: (1)JDBC2.0的可滚动结果集. (2)HTTP GET请求. 一.可滚动结果集   Connection con  = DriverManager.g ...

  8. 【刷题-LeetCode】238. Product of Array Except Self

    Product of Array Except Self Given an array nums of n integers where n > 1, return an array outpu ...

  9. 【VictoriaMetrics】vm单机版和vm-storage的查询功能的对比

    1.vm-storage源码调用表 文件 行号 函数 说明 app/vmstorage/main.go 53 main 入口94行调用srv.RunVMSelect() app/vmstorage/t ...

  10. 【采坑小计】thanos receiver的官方文档中,并未说明tsdb落盘的配置方式

    官方文档的地址在:https://thanos.io/tip/components/receive.md/ 一开始以为落盘的时间间隔是:--tsdb.retention=15d 实际测试中发现,tha ...