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 asp.net 用json格式返回自定义对象
Apr 07 Javascript
js substr、substring和slice使用说明小记
Sep 15 Javascript
javascipt基础内容--需要注意的细节
Apr 10 Javascript
js控制frameSet示例
Sep 10 Javascript
解决jQuery上传插件Uploadify出现Http Error 302错误的方法
Dec 18 Javascript
Bootstrap编写导航栏和登陆框
May 30 Javascript
JavaScript进阶练习及简单实例分析
Jun 03 Javascript
js的三种继承方式详解
Jan 21 Javascript
如何使用CSS3和JQuery easing 插件制作绚丽菜单
Jun 18 jQuery
详解微信小程序工程化探索之webpack实战
Apr 20 Javascript
如何使用JavaScript实现无缝滚动自动播放轮播图效果
Aug 20 Javascript
React Hook用法示例详解(6个常见hook)
Apr 28 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的一个登录的类 [推荐]
2007/03/16 PHP
解析MySql与Java的时间类型
2013/06/22 PHP
Thinkphp 3.2框架使用Redis的方法详解
2019/10/24 PHP
JQuery 学习笔记 选择器之五
2009/07/23 Javascript
jQuery EasyUI API 中文文档 - ValidateBox验证框
2011/10/06 Javascript
jquery简单瀑布流实现原理及ie8下测试代码
2013/01/23 Javascript
jquery清空textarea等输入框实现代码
2013/04/22 Javascript
js中点击空白区域时文本框与隐藏层的显示与影藏问题
2013/08/26 Javascript
利用jquery包将字符串生成二维码图片
2013/09/12 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
jQuery常用数据处理方法小结
2015/02/20 Javascript
JS继承之借用构造函数继承和组合继承
2016/09/07 Javascript
详解Vue CLI3配置之filenameHashing使用和源码设计使用和源码设计
2018/08/31 Javascript
Angular5中状态管理的实现
2018/09/03 Javascript
Vuex 快速入门(简单易懂)
2018/09/20 Javascript
详解React之key的使用和实践
2018/09/29 Javascript
小程序实现列表删除功能
2018/10/30 Javascript
详解vue2.6插槽更新v-slot用法总结
2019/03/09 Javascript
layui table 获取分页 limit的方法
2019/09/20 Javascript
vue获取form表单的值示例
2019/10/29 Javascript
js中apply和call的理解与使用方法
2019/11/27 Javascript
Antd表格滚动 宽度自适应 不换行的实例
2020/10/27 Javascript
说一说Python logging
2016/04/15 Python
win系统下为Python3.5安装flask-mongoengine 库
2016/12/20 Python
python中如何正确使用正则表达式的详细模式(Verbose mode expression)
2017/11/08 Python
python监控进程状态,记录重启时间及进程号的实例
2019/07/15 Python
解决ROC曲线画出来只有一个点的问题
2020/02/28 Python
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?用contains来区分是否有重复的对象。还是都不用
2013/07/30 面试题
家长评语大全
2014/01/22 职场文书
五型班组建设方案
2014/02/10 职场文书
大三学生做职业规划:给未来找个方向
2014/02/24 职场文书
中学校庆方案
2014/03/17 职场文书
护士演讲稿优秀范文
2014/04/30 职场文书
政治思想表现评语
2014/05/04 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
2014年作风建设剖析材料
2014/10/23 职场文书