转载请注明来源: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. matplotlib 进阶之Tight Layout guide

    目录 简单的例子 Use with GridSpec Legend and Annotations Use with AxesGrid1 Colorbar 函数链接 matplotlib教程学习笔记 ...

  2. [zbar]zbar条码扫描器解析示例

    // // Created by leoxae on 2020/3/30. // #include "BarCodeRecogntion.h" string BarCode::Ba ...

  3. BUUCTF [极客大挑战 2019]Not Bad

    总的来说这是一个64位orw的题 开头先在主函数里分配了一个很大的空间 1 __int64 __fastcall main(int a1, char **a2, char **a3) 2 { 3 mm ...

  4. layedit赋值方法(layedit.setContent赋值时报错-ReferenceError: layedit is not defined)

    layedit.setContent赋值时报错 - ReferenceError: layedit is not defined 报错代码: 控制台报错信息 解决方法: 步骤: 1)先赋值: 2)在渲 ...

  5. 编写Java程序,跑道长 50m,模拟 3 名学生同时在跑道跑步的场景 3名同学相当于3个线程对象

    查看本章节 查看作业目录 需求说明: 跑道长 50m,模拟 3 名学生同时在跑道跑步的场景 3名同学相当于3个线程对象 实现思路: 创建 Java 项目,在项目中创建StudentRunning类,该 ...

  6. 物联网大赛 - Android学习笔记(二)Andriod 应用界面编程

    学习目标: Android的程序界面和View组件 View组件和ViewGroup组件 常见的布局管理器 文本框组件TextView和EditView 按钮组件Button 和ImageButton ...

  7. Shell调试Debug的三种方式

    Shell脚本进行Debug调试的三种方法如下: 1.在调用脚本的时候开启deubg sh -x shell.sh 2.在脚本文件首行开启deubg #!/bin/bash -x 3. 使用set开启 ...

  8. 2 - 基于ELK的ElasticSearch 7.8.x技术整理 - java操作篇 - 更新完毕

    3.java操作ES篇 3.1.摸索java链接ES的流程 自行创建一个maven项目 3.1.1.依赖管理 点击查看代码 <properties> <ES-version>7 ...

  9. spring boot 使用 mybatis 开启事务回滚 的总结

    1.前言 以前没有使用mybatis,可以关闭自动提交,然后做sql操作,对操作进行catch捕获异常, 如果没有异常则commit 提交 ,有异常则 rollback 回滚,新增的数据则删除 ,修改 ...

  10. Thrift框架-具体使用

    1.前言 使用thrift心得: (1)thrift是一个RPC的框架  ,RPC是远程过程调用协议:用于进行可扩展且跨语言的服务的开发,以构建在C++.Java.Python.PHP.Ruby.Er ...