使用C#需要在新页面中打开一个Excel文件。
我把这个Excel文件放在IIS中的名为excel的虚拟目录下。
链接为http://10.96.94.213:80/excel/text.xls我的需求需要点击按钮,生成一个Excel文件,然后再新页面中打开这个Excel文件。
我写的代码如下:
protected void Button1_Click(object sender, EventArgs e)
{ ……生成文件的代码略…… string js = "<Script>" +
" window.open('http://10.96.94.213:80/excel/text.xls');"+
"</Script>";
Response.Write(js);
}
出现的问题是,新页面打开之后马上就自动关闭了。但是我直接把地址写在IE上是好使的。请问问题出在哪里?
我把这个Excel文件放在IIS中的名为excel的虚拟目录下。
链接为http://10.96.94.213:80/excel/text.xls我的需求需要点击按钮,生成一个Excel文件,然后再新页面中打开这个Excel文件。
我写的代码如下:
protected void Button1_Click(object sender, EventArgs e)
{ ……生成文件的代码略…… string js = "<Script>" +
" window.open('http://10.96.94.213:80/excel/text.xls');"+
"</Script>";
Response.Write(js);
}
出现的问题是,新页面打开之后马上就自动关闭了。但是我直接把地址写在IE上是好使的。请问问题出在哪里?
Page.ClientScript.RegisterStartupScript(this.GetType(), null, "window.open('../js/22.xls','_blank');", true);
你说的写在脚本里是什么意思?
当您打开的文件,可以显示直接,例如为 PDF 文件和具有.txt 或.htm 文件扩展名的文件时不会发生此问题。
所以你打开服务器上的是具有.txt 或.htm 文件扩展名的文件的话 就不会存在打开就自动关闭的问题。
例如
string js = " <Script>" +
" window.open('http://10.96.94.213:80/excel/222.txt');"+
" </Script>";
Response.Write(js);
打开xls文件的话,正在想...
按照下列步骤操作:1. 在 工具 菜单上, 单击 Internet 选项 。
2. 在 安全 选项卡上, 单击 本地 Intranet ,然后单击 站点 。
3. 单击 高级 在 本地 Intranet 对话框。
4. 在 添加到区域此 Web 站点 框中, 键入网站的 URL。
5. 单击 确定 两次。
6. 单击 确定 以关闭 Internet 选项 对话框。这样就不会出现打开xls文件,马上就关闭的情况。你去试试
写这个
Response.Write("<script>window.open('http://www.jnsz.gov.cn/eWebEditor/UploadFile/20071226173758537.xls')</script>");
不会自动关闭,
是不是安全性太高了?
我也用另一种方法实现了,因为之前使用超链接和HTML按钮的话是可以打开的。
所以我就用JS调用C#的函数,然后再HTML按钮的onclick事件再调用JS的function就可以绕过这个问题了,就是太麻烦。
谢谢大家!