JavaScript将页面表格导出为Excel的具体实现


Posted in Javascript onDecember 27, 2013
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML> 
<HEAD> 
<TITLE>导出Excel</TITLE> 
<script type="text/javascript"> 
var idTmr = ""; 
function killExcelProcess(appExcel_){ 
appExcel_.Quit(); 
appExcel_ = null; 
idTmr = window.setInterval("Cleanup();",1); 
} //导出到excel,参数tableid为JSP页面需要导出的table的id,需要更改IE的安全设置,ActiveX都打开,如果还是不能使用,再服务端运行“regsvr32 scrrun.dll” 
function exportToExcel(tableid,notitleandsearch){ 
try { 
clipboardData.setData('Text',''); 
var appExcel = new ActiveXObject("Excel.Application"); 
killExcelProcess(appExcel); 
appExcel.workbooks.add; 
//标题 
if (notitleandsearch==null||notitleandsearch==false){ 
var elTable = document.getElementById('div_title'); 
var oRangeRef = document.body.createTextRange(); 
oRangeRef.moveToElementText(elTable); 
oRangeRef.execCommand( "Copy" ); 
appExcel.ActiveSheet.Cells(1,3).select(); 
appExcel.ActiveSheet.Paste(); 
clipboardData.setData('Text',''); 
appExcel.ActiveSheet.Cells(2,1).select(); 
appExcel.ActiveSheet.Paste(); 
} 
var elTable1 = document.getElementById(tableid); 
var oRangeRef1 = document.body.createTextRange(); 
oRangeRef1.moveToElementText(elTable1); 
oRangeRef1.execCommand( "Copy" ); 
appExcel.WorkSheets(1).Activate; 
if (notitleandsearch==null||notitleandsearch==false){ 
appExcel.ActiveSheet.Cells(3,1).select(); 
}else{ 
appExcel.ActiveSheet.Cells(1,1).select(); 
} 
appExcel.WorkSheets(1).Activate; 
appExcel.ActiveSheet.Paste(); 
appExcel.Visible = true; 
} catch(e) { 
alert("请确认IE安全设置,ActiveX都启用!"); 
return false; 
} 
clipboardData.setData('text',''); 
} 
</script> 
</HEAD> 
<BODY> 
<button onclick="javascript:exportToExcel('testList','');">导出</button><br> 
<div id='div_title' > 
<font color='black' size='4'><strong>导出报表</strong></font> 
</div> 
<table id = "testList" bordercolor="#000000" border = "1"> 
<tr> 
<td>序列</td> 
<td>姓名</td> 
<td>数量</td> 
</tr> 
<tr> 
<td>1</td> 
<td>张三1</td> 
<td>2</td> 
</tr> 
<tr> 
<td>2</td> 
<td>张三2</td> 
<td>2</td> 
</tr> 
<tr> 
<td>3</td> 
<td>张三3</td> 
<td>2</td> 
</tr> 
<tr> 
<td>4</td> 
<td>张三4</td> 
<td>2</td> 
</tr> 
<tr> 
<td>5</td> 
<td>张三5</td> 
<td>2</td> 
</tr> 
<tr> 
<td colspan="2">总计:</td> 
<td>10</td> 
</tr> 
</table> 
</BODY> 
</HTML>
Javascript 相关文章推荐
基于jquery异步传输json数据格式实例代码
Nov 23 Javascript
原生JS绑定滑轮滚动事件兼容常见浏览器
Jun 30 Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
Nov 25 Javascript
JavaScript判断是否是微信浏览器
Jun 13 Javascript
原生js实现打字动画游戏
Feb 04 Javascript
轻松理解vue的双向数据绑定问题
Oct 30 Javascript
select标签设置默认选中的选项方法
Mar 02 Javascript
实战node静态文件服务器的示例代码
Mar 08 Javascript
create-react-app 修改为多入口编译的方法
Aug 01 Javascript
Vue 组件参数校验与非props特性的方法
Feb 12 Javascript
小程序实现订单倒计时功能
Apr 23 Javascript
从零搭一个自用的前端脚手架的方法步骤
Sep 23 Javascript
Java/JS获取flash高宽的具体方法
Dec 27 #Javascript
location.href用法总结(最主要的)
Dec 27 #Javascript
Javascript四舍五入Math.round()与Math.pow()使用介绍
Dec 27 #Javascript
JS去除字符串两端空格的简单实例
Dec 27 #Javascript
textarea 控制输入字符字节数(示例代码)
Dec 27 #Javascript
js控制input输入字符解析
Dec 27 #Javascript
javaScript 计算两个日期的天数相差(示例代码)
Dec 27 #Javascript
You might like
解析php中如何直接执行SHELL
2013/06/28 PHP
php生成随机数的三种方法
2014/09/10 PHP
PHP获取youku视频真实flv文件地址的方法
2014/12/23 PHP
WordPress中登陆后关闭登陆页面及设置用户不可见栏目
2015/12/31 PHP
PHP+Apache环境中如何隐藏Apache版本
2017/11/24 PHP
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(下:动画篇)
2010/03/24 Javascript
js 实现打印网页中定义的部分内容的代码
2010/04/01 Javascript
js Form.elements[i]的使用实例
2011/11/13 Javascript
javascript setinterval 的正确语法如何书写
2014/06/17 Javascript
jQuery插件EnPlaceholder实现输入框提示文字
2015/06/05 Javascript
详解JavaScript时间格式化
2015/12/23 Javascript
jQuery表单验证插件解析(推荐)
2016/07/21 Javascript
手机端实现Bootstrap简单图片轮播效果
2016/10/13 Javascript
Bootstrap基本组件学习笔记之分页(12)
2016/12/08 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
js实现带简单弹性运动的导航条
2017/02/22 Javascript
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
使用node.js对音视频文件加密的实例代码
2017/08/30 Javascript
Element输入框带历史查询记录的实现示例
2019/01/15 Javascript
js代码编写无缝轮播图
2020/09/13 Javascript
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
python批量读取txt文件为DataFrame的方法
2018/04/03 Python
Python实现判断一行代码是否为注释的方法
2018/05/23 Python
学生信息管理系统Python面向对象版
2019/01/30 Python
Django REST 异常处理详解
2020/07/15 Python
使用canvas绘制超炫时钟
2014/12/17 HTML / CSS
原生 JS+CSS+HTML 实现时序图的方法
2019/07/31 HTML / CSS
局域网定义和特性
2016/01/23 面试题
下面代码从性能上考虑,有什么问题
2015/04/03 面试题
2014升学宴答谢词
2014/01/26 职场文书
致100米运动员广播稿
2014/02/14 职场文书
会计专业自荐书
2014/07/08 职场文书
导游词开场白
2015/01/31 职场文书
让子弹飞观后感
2015/06/11 职场文书
MySQL命令无法输入中文问题的解决方式
2021/08/30 MySQL
TV动画《神废柴☆偶像》公布先导PV
2022/03/20 日漫