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中使用setInterval和setTimeout的方法
Apr 08 Javascript
jQuery prev ~ siblings选择器使用介绍
Aug 09 Javascript
开源免费天气预报接口API及全国所有地区代码(国家气象局提供)
Dec 26 Javascript
使用node.js搭建服务器
May 20 Javascript
最常用的jQuery表单验证(简单)
May 23 jQuery
vue init webpack 建vue项目报错的解决方法
Sep 29 Javascript
开发用到的js封装方法(20种)
Oct 12 Javascript
微信小程序云开发之数据库操作
May 18 Javascript
一个手写的vue放大镜效果
Aug 09 Javascript
layui实现checkbox的目录树tree的例子
Sep 12 Javascript
vue实现购物车加减
May 30 Javascript
vue组件中传值EventBus的使用及注意事项说明
Nov 16 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
DOTA2 无惧惊涛骇浪 昆卡大型水友攻略
2020/04/20 DOTA
如何选购合适的收音机
2021/03/01 无线电
PHP实现活动人选抽奖功能
2017/04/19 PHP
JQuery切换显示的效果实例代码
2013/02/27 Javascript
iframe窗口高度自适应的实现方法
2014/01/08 Javascript
NodeJS学习笔记之Connect中间件模块(二)
2015/01/27 NodeJs
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
2015/12/10 Javascript
jQuery抛物线运动实现方法(附完整demo源码下载)
2016/01/08 Javascript
js实现浏览器倒计时跳转页面效果
2016/08/12 Javascript
@ResponseBody 和 @RequestBody 注解的区别
2017/03/08 Javascript
微信小程序request出现400的问题解决办法
2017/05/23 Javascript
angular框架实现全选与单选chekbox的自定义
2017/07/06 Javascript
Bootstrap 模态框(Modal)带参数传值实例
2017/08/20 Javascript
解决vue项目打包后提示图片文件路径错误的问题
2018/07/04 Javascript
小程序实现发表评论功能
2018/07/06 Javascript
webstorm中配置Eslint的两种方式及差异比较详解
2018/10/19 Javascript
Vue项目实现换肤功能的一种方案分析
2019/08/28 Javascript
微信小程序修改数组长度的问题的解决
2019/12/17 Javascript
JS监听组合按键思路及实现过程
2020/04/17 Javascript
微信小程序 获取手机号 JavaScript解密示例代码详解
2020/05/14 Javascript
解决vue一个页面中复用同一个echarts组件的问题
2020/07/19 Javascript
jquery简易手风琴插件的封装
2020/10/13 jQuery
[57:24]LGD vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python模拟登录并且保持cookie的方法详解
2017/04/04 Python
Python实现合并同一个文件夹下所有txt文件的方法示例
2018/04/26 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
2018/05/16 Python
python将控制台输出保存至文件的方法
2019/01/07 Python
使用Python实现批量ping操作方法
2020/05/06 Python
Python如何在windows环境安装pip及rarfile
2020/06/15 Python
ALLSAINTS英国官网:伦敦新锐潮流品牌
2016/09/19 全球购物
2014年两会学习心得范例
2014/03/17 职场文书
工程部主管岗位职责
2015/02/12 职场文书
回复函范文
2015/07/14 职场文书
如何书写你的职业生涯规划书?
2019/06/27 职场文书
Python预测分词的实现
2021/06/18 Python
MySQL数据库 安全管理
2022/05/06 MySQL