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 相关文章推荐
jQuery中filter(),not(),split()使用方法
Jul 06 Javascript
TextArea不支持maxlength的解决办法(jquery)
Sep 13 Javascript
JQuery获取各种宽度、高度(format函数)实例
Mar 04 Javascript
javascript实现禁止右键和F12查看源代码
Dec 26 Javascript
angular.bind使用心得
Oct 26 Javascript
jQuery+ajax+asp.net获取Json值的方法
Jun 08 Javascript
JavaScript使用键盘输入控制实现数字验证功能
Aug 19 Javascript
浅谈javascript中的数据类型转换
Dec 27 Javascript
RequireJs的使用详解
Feb 19 Javascript
webpack配置文件和常用配置项介绍
Apr 28 Javascript
回顾Javascript React基础
Jun 15 Javascript
vue+Element中table表格实现可编辑(select下拉框)
May 21 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中获取远程客户端的真实ip地址的方法
2011/08/03 PHP
PHP排序之二维数组的按照字母排序实现代码
2011/08/13 PHP
thinkPHP的Html模板标签使用方法
2012/11/13 PHP
PHP SPL标准库之数据结构栈(SplStack)介绍
2015/05/12 PHP
PHP编程中尝试程序并发的几种方式总结
2016/03/21 PHP
Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
2010/12/06 Javascript
jQuery中size()方法用法实例
2014/12/27 Javascript
javascript将异步校验表单改写为同步表单
2015/01/27 Javascript
JS实现自适应高度表单文本框的方法
2015/02/25 Javascript
jQuery简单实现QQ空间点赞已经取消点赞
2015/04/02 Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
2016/01/27 Javascript
JS中sort函数排序用法实例分析
2016/06/16 Javascript
针对JavaScript中this指向的简单理解
2016/08/26 Javascript
AngularJS学习笔记(三)数据双向绑定的简单实例
2016/11/08 Javascript
Javascript中八种遍历方法的执行速度深度对比
2017/04/25 Javascript
详解vue-cli项目中的proxyTable跨域问题小结
2018/02/09 Javascript
JS实现运动缓冲效果的封装函数示例
2018/02/18 Javascript
原生JS实现前端本地文件上传
2018/09/08 Javascript
axios+Vue实现上传文件显示进度功能
2019/04/14 Javascript
简单了解JavaScript中常见的反模式
2019/06/21 Javascript
JavaScript的console命令使用实例
2019/12/03 Javascript
Vue中实现回车键切换焦点的方法
2020/02/19 Javascript
python daemon守护进程实现
2016/08/27 Python
Python检查ping终端的方法
2019/01/26 Python
Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
2019/04/15 Python
使用pandas读取文件的实现
2019/07/31 Python
python with (as)语句实例详解
2020/02/04 Python
pip install 使用国内镜像的方法示例
2020/04/03 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
详解如何在登录过期后跳出Ifram框架
2020/09/10 HTML / CSS
巴西网上药店:Drogaria Araujo
2021/01/06 全球购物
芭比波朗加拿大官方网站:Bobbi Brown Cosmetics CA
2020/11/05 全球购物
文言文形式的学生求职信
2013/12/03 职场文书
实习会计求职自荐信范文
2014/03/10 职场文书
企业三严三实学习心得体会
2014/10/13 职场文书
先进单位事迹材料
2014/12/25 职场文书