IE对不同区域有不同的安全设置,在本机运行的时候,可以创建Excel.Application对象,但如果代码是来自Internet的,IE就会认为创建Excel.Application对象有安全隐患,可能就禁止创建这个对象了.
可以通过设置IE的Internet区域的安全级来解决这个问题.同时,运行这段代码的客户机必须安装了Excel应用程序.否则即使安全设置没有问题,也会出错的。
可以通过设置IE的Internet区域的安全级来解决这个问题.同时,运行这段代码的客户机必须安装了Excel应用程序.否则即使安全设置没有问题,也会出错的。
Response.Write("..........");
..........
但是楼上两位的方式我都试过了,不见效果啊,出错提示还是
我将网页安全级都设至最低了,而且我的测试服务器上也装了Excel软件。我用的是jsp,测试服务器是
Tomcat。提示仍然是“Automation服务器不能创建对象”。
关于在服务器端输出文件流这一方式,我是这样做的:
<%
response.setContentType("application/vnd.ms-excel");
out.print("<script language=\"javascript\">"+
"function AutomateExcel() "+
"{ "+
"var oXL = new ActiveXObject(\"Excel.Application\"); "+
"var oWB = oXL.Workbooks.Add(); "+
"var oSheet = oWB.ActiveSheet; "+
"var table = document.all.toExcel; "+
"var hang = table.rows.length; "+
"var lie = table.rows(0).cells.length; "+
"for (i=0;i<hang;i++) "+
"{ "+
"for (j=0;j<lie;j++) "+
"{ "+
"oSheet.Cells(i+1,j+1).value = table.rows(i).cells(j).innerText; "+
"} "+
"} "+
"oXL.Visible = true; "+
"oXL.UserControl = true; "+
"} "+"function doExcel(){"+
" document.goform.toexcel.value=\"excel\";"+
"document.goform.action=\"jobsearch.jsp\";"+
" document.goform.submit();"+
"}"+
"</script>");
%>错误依旧。不知道还有没有其他的解决办法啊。
你上面的代码等于还是用的js
http://blog.csdn.net/oyesky/archive/2004/06/24/24957.aspxASP导出Excel数据的四种方法
http://www.yesky.com/SoftChannel/72342380468043776/20030805/1719195_1.shtml
终于发现了问题所在,程序代码没问题。只要修改Internet的安全设定,将安全级改为中级,
然后客户端起用ActiveX就没问题了。
谢谢。