JS调用页面表格导出excel示例代码


Posted in Javascript onMarch 18, 2014

使用JS方法调用页面表格导出excel有很大的限制:
1、目前试了几个浏览器,只有IE支持,
2、点击 工具---安全---自定义级别---ActiveX 相关选项启用
下面是html代码

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
<% 
String path = request.getContextPath(); 
String basePath = request.getScheme() + "://" 
+ request.getServerName() + ":" + request.getServerPort() 
+ path + "/"; 
%> 
<html> 
<head> 
<script language="javascript"> 
var idTmr = ""; 
// 函数功能:复制表格到Excel中 
// 参 数:tableID 表的id 
function CellToTable(tableID) 
{ 
var tid=document.getElementById(tableID); 
// 加载ActiveX控件,获取Excel句柄 
var exApp = new ActiveXObject("Excel.Application"); // 创建一个Excel文件 
var owb = exApp.WorkBooks.add(); 
// 获取sheet1句柄CA 
var exSheet = exApp.ActiveWorkBook.WorkSheets(1); 
// 设置sheet1的名称 
exSheet.name="演示复制表格到Excel中"; 
// copy指定的表格 
var sel=document.body.createTextRange(); 
sel.moveToElementText(tid); 
sel.select(); 
sel.execCommand("Copy"); 
exSheet.Paste();// 粘贴到sheet中 
//exApp.save();// 弹出保存对话框,保存Excel文件 
exApp.Visible = false; 
var fname = exApp.Application.GetSaveAsFilename("save.xls", "Excel Spreadsheets (*.xls), *.xls"); 
owb.SaveAs(fname); 
exApp.Quit();// 退出Excel实例 
exApp = null; 
// 调用Cleanup()进行垃圾回收 
idTmr = window.setInterval("Cleanup();",10); 
} 
// 函数功能:杀掉Excel进程 
function Cleanup() { 
window.clearInterval(idTmr); 
CollectGarbage(); 
} 
</script> 
</head> 
<body> 
<table width="307" border="1" cellspacing="0" cellpadding="0" id="tableToExcel" name="tableName"> 
<tr bgcolor="#99CCCC"> 
<td width="66" rowspan="4" bgcolor="#33FF99">吉林的长春</td> 
<td width="67" rowspan="4" bgcolor="#33FF99">辽宁的沈阳</td> 
<td width="94" rowspan="4" bgcolor="#33FF99">黑龙江的哈尔滨</td> 
<td width="30" rowspan="4" bgcolor="#33FF99">北京</td> 
<td width="38" bgcolor="#66CC99">海淀</td> 
</tr> 
<tr bgcolor="#99CCCC"> 
<td bgcolor="#66CC99">吉林-长春</td> 
</tr> 
<tr bgcolor="#99CCCC"> 
<td bgcolor="#66CC99">辽宁-沈阳</td> 
</tr> 
<tr bgcolor="#99CCCC"> 
<td bgcolor="#66CC99">黑龙江-哈尔滨</td> 
</tr> 
<tr bgcolor="#99CCCC"> 
<td colspan="5">演示javascrīpt对表格copy的处理过程(推荐) </td> 
</tr> 
<tr bgcolor="#99CCCC"> 
<td colspan="5"><label> 
<div align="center"> 
<input name="textfield" type="text" value="单行文本框控件" size="30"/> 
</div> 
</label></td> 
</tr> 
</table> 
<br> 
<input type="submit" name="Submit3" value="点击复制表格到Excel中" onclick= "CellToTable('tableToExcel')" /> 
</body> 
</html>
Javascript 相关文章推荐
两个SUBMIT按钮,如何区分处理
Aug 22 Javascript
jquery下异步提交表单 异步跨域提交表单
Nov 17 Javascript
jQuery Timelinr实现垂直水平时间轴插件(附源码下载)
Feb 16 Javascript
全面解析Bootstrap表单样式的使用
Sep 09 Javascript
8 行 Node.js 代码实现代理服务器
Dec 05 Javascript
详谈Angular 2+ 的表单(一)之模板驱动型表单
Apr 25 Javascript
vue基础之data存储数据及v-for循环用法示例
Mar 08 Javascript
vue里如何主动销毁keep-alive缓存的组件
Mar 21 Javascript
vue通过video.js解决m3u8视频播放格式的方法
Jul 30 Javascript
详解将微信小程序接口Promise化并使用async函数
Aug 05 Javascript
浅谈webpack构建工具配置和常用插件总结
May 11 Javascript
AutoJs实现刷宝短视频的思路详解
May 22 Javascript
javascript:window.open弹出窗口的位置问题
Mar 18 #Javascript
js判断iframe内的网页是否滚动到底部触发事件
Mar 18 #Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
Mar 18 #Javascript
JS判断字符串长度的5个方法(区分中文和英文)
Mar 18 #Javascript
file控件选择上传文件确定后触发的js事件是哪个
Mar 17 #Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
Mar 17 #Javascript
javascript读取Xml文件做一个二级联动菜单示例
Mar 17 #Javascript
You might like
PHP 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
2009/01/30 PHP
php地址引用(php地址引用的效率问题)
2012/03/23 PHP
PHP json_decode函数详细解析
2014/02/17 PHP
PHP文件上传类实例详解
2016/04/08 PHP
php文件上传、下载和删除示例
2020/08/28 PHP
基于PHP-FPM进程池探秘
2017/10/17 PHP
JavaScript 模仿vbs中的 DateAdd() 函数的代码
2007/08/13 Javascript
取消选中单选框radio的三种方式示例介绍
2013/12/23 Javascript
js+css实现的简单易用兼容好的分页
2013/12/30 Javascript
封装好的javascript前端分页插件pagination
2016/01/04 Javascript
浅谈javascript的call()、apply()、bind()的用法
2016/02/21 Javascript
详解Bootstrap插件
2016/04/25 Javascript
jQuery ajax中使用confirm,确认是否删除的简单实例
2016/06/17 Javascript
Google 地图叠加层实例讲解
2016/08/06 Javascript
微信小程序 实例应用(记账)详解
2016/09/28 Javascript
基于Angularjs+mybatis实现二级评论系统(仿简书)
2017/02/13 Javascript
vue-router:嵌套路由的使用方法
2017/02/21 Javascript
基于JavaScript实现图片剪切效果
2017/03/07 Javascript
实例解析Vue.js下载方式及基本概念
2018/05/11 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
深入学习TypeScript 、React、 Redux和Ant-Design的最佳实践
2019/06/17 Javascript
浅谈Three.js截图并下载的大坑
2019/11/01 Javascript
Vue常用API、高级API的相关总结
2021/02/02 Vue.js
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
Python中使用urllib2模块编写爬虫的简单上手示例
2016/01/20 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
2018/06/11 Python
python 三元运算符使用解析
2019/09/16 Python
python利用xpath爬取网上数据并存储到django模型中
2021/02/26 Python
css3 2D图片转动样式可以扩充到Js当中
2014/04/29 HTML / CSS
HTML5获取当前地理位置并在百度地图上展示的实例
2020/07/10 HTML / CSS
学校安全检查制度
2014/01/27 职场文书
政工例会汇报材料
2014/08/26 职场文书
老公保证书怎么写
2015/02/26 职场文书
孕妇病假条怎么写
2015/08/17 职场文书
高效笔记技巧分享:学会这些让你不再困扰
2019/09/04 职场文书
排查并解决Oracle sysaux表空间异常增长
2022/04/20 Oracle