看参考此blog
http://www.cnblogs.com/siye1982/archive/2008/01/30/1058705.html
http://www.cnblogs.com/siye1982/archive/2008/01/30/1058705.html
解决方案 »
- 怎么修改实现一个页面多个自动切换滑动门显示
- jquery 支持安卓等手机web开发bu ?
- 一个页面的内容发生变化,如何刷新另一页面?应该是用js或ajax吧,麻烦哪位热心人给出具体点的方法,谢了
- jqgrid grid中的rowid与数据有关系吗?我在用updateGridRows时弄糊涂了
- 求一段js 正则验证中文的代码
- 如何在同一页面内实现音乐选择连播?
- 好象在IE7下面用'加入收藏'代码不行了.给为进来看吧
- 请问这个两个条件的判断语句哪里错了,为什么怎么调试都没用阿!
- IE5不支持Array的toString()方法吗?
- 换个问法:关于inputtext的回车问题
- 在javascript中如何判定 文本框 文本被选中
- 请问这个图片滚动的效果如何实现呢?谢谢高手指教
{//整个表格拷贝到EXCEL中
var tableid="<table><tr><td>555</td></tr><tr><td>66</td></tr></table>";
var curTbl = document.getElementById(tableid);
var oXL = new ActiveXObject("Excel.Application");
//创建AX对象excel
var oWB = oXL.Workbooks.Add();
//获取workbook对象
var oSheet = oWB.ActiveSheet;
//激活当前sheet
var sel = document.body.createTextRange();
sel.moveToElementText(curTbl);
//把表格中的内容移到TextRange中
sel.select();
//全选TextRange中内容
sel.execCommand("Copy");
//复制TextRange中内容
oSheet.Paste();
//粘贴到活动的EXCEL中
oXL.Visible = true;
//设置excel可见属性
}
这样试了一下
var oXL = new ActiveXObject("Excel.Application"); 提示不能创建对象?
把你浏览器的 ActiveX 关于控件的安全设置一下
var oXL = new ActiveXObject("Excel.Application");
ActiveX 的几个选项 都 设为 启动了 还是这样的错误
<html>
<body>
<table>
<tr>
<td>123</td>
</tr>
<tr>
<td>456</td>
</tr>
<tr>
<td>789</td>
</tr>
</table>
</body>
</html>你把这个保存为excel.jsp,放到工程里面再打开看看
<body></body>里面的内容,你可以在后台组成一堆字符串,再set到页面上,这样就可以做成动态的了
<%
response.setHeader("Content-disposition","inline;filename=哈哈.xls");
%>
<html>
<body>
<table>
<tr>
<td>123</td>
</tr>
<tr>
<td>456</td>
</tr>
<tr>
<td>789</td>
</tr>
</table>
</body>
</html>
比如a.jsp有一个按钮
<input type="button" value="导出到excel" onClick="down();">
<script>
function down(){
this.location = "abcAction";
}
</script>然后你在abcAction中这样String str = "<table><tr><td>123456788798</td></tr></table>";//这个字符串你可以在后台动态生成
request.setAttribute("str",str);
RequestDispatcher requestDispatcher = request.getRequestDispatcher("excel.jsp");
requestDispatcher.forward(request, response);最后excel.jsp中这样写<%@ page contentType="application/msexcel;charset=gbk" %>
<%
response.setHeader("Content-disposition","inline;filename=哈哈.xls");
String str = request.getAttribute("str");
%>
<html>
<body>
<%=str%>
</body>
</html>如果还不明白的话,我就要跳楼了
就 用js 打开另一个aspx页面,然后再页面里面,读取数据,导出excel,然后再关闭,一样的。就是我不明白,我的js脚本怎么老是 提示不能创建对象了,我到网上查了半天还是不行,插件也注册了,还是不使。
<table id="excel" border="1">
<tr>
<td>Header A</td>
<td>Header B</td>
<td>Header C</td>
</tr>
<tr>
<td>Item A</td>
<td>Item B</td>
<td>Item C</td>
</tr>
<tr>
<td>Item A</td>
<td>Item B</td>
<td>Item C</td>
</tr>
</table><BR>
<input type="button" value="Export to Excel" onclick="Export()"><script type="text/javascript">
function Export(){
try{
var Excel = new ActiveXObject("Excel.Application");
}
catch(err){
var errMsg = "";
for(var item in err) errMsg += o + " : " + err[o];
alert(errMsg);
}
var WorkBook = Excel.Workbooks.Add();
var Sheet = WorkBook.ActiveSheet;
var TRs = document.getElementById("excel").getElementsByTagName("tr");
for(var r=0;r<TRs.length;r++){
var TDs = TRs[r].getElementsByTagName("td");
for(var c=0;c<TDs.length;c++)
Sheet.Cells(r+1,c+1).value = TDs[c].innerText;
}
Sheet.Columns.AutoFit;
Excel.Visible = true;
Excel.Activate;
}
</script>