【问题】
将jsp中的table导出到excel中。具体实现代码如下:
【实现】
<%@ page language="java"contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<html>
<head>
<scripttype="text/javas cript">
function method1(tableid){
varcurTbl = document.getElementById(tableid);
var oXL= newActiveXObject("Excel.Application");
var oWB= oXL.Workbooks.Add();
varoSheet = oWB.ActiveSheet;
var sel= document.body.createTextRange();
sel.moveToElementText(curTbl);
sel.select();
sel.execCommand("Copy");
oSheet.Paste();
oXL.Visible = true;
}
</script>
</head>
<body
on load="method1('tableExcel');">
<table id="tableExcel" width="100%" border="1"cellspacing="0" cellpadding="0">
<tr>
<tdcolspan="5" align="center">html表格导出道Excel</td>
</tr>
<tr>
<td>列标题1</td>
<td>列标题2</td>
<td>类标题3</td>
<td>列标题4</td>
<td>列标题5</td>
</tr>
<tr>
<td>aaa</td>
<td>bbb</td>
<td>ccc</td>
<td>ddd</td>
<td>eee</td>
</tr>
<tr>
<td>AAA</td>
<td>BBB</td>
<td>CCC</td>
<td>DDD</td>
<td>EEE</td>
</tr>
<tr>
<td>FFF</td>
<td>GGG</td>
<td>HHH</td>
<td>III</td>
<td>JJJ</td>
</tr>
</table>
</body>
</html>
执行这段代码就会出现一个提示框,问你是否保存,可以选择适当的位置进行保存。
但是这种放法存在几个缺陷:
缺点(1):
客户端机器上
必须安装了excel,否则会出错。
缺点(2):
必须修改浏览器的默认设置。设置方法为:
工具->Internet选项->安全->自定义级别->
对没有标记安全级别的ActiveX控件进行初始化
设为启用
鉴于以上缺点,我们不是适合使用该方法,太具有局限性。
第二种发放见下一篇博客,使用一个servlet来完成。