您的位置:首页 > 运维架构

关于ie8下windows.open问题解决方法

2011-05-26 19:03 204 查看
在一个项目中需要下载文件,使用了windows.open访问下载页面。但是在ie中却需要设置ie8才能支持。

设置方法:

如果你的IE8图标就放在桌面的话,右键单击图标,选择“属性”,进入IE8设置。
或者打开IE8后,工具栏右上角选择“工具”-“internet选项”,进入设置
然后在弹出的属性设置窗口,靠下的“选项卡”点“设置”,然后在“遇到新窗口时”那一部分选中“始终在新选项卡中打开弹出窗口”,

以及“从位于以下位置的其他程序打开链接”那一部分中选中“当前窗口中的新选项卡”,最后点“确定”
。

但是这不是一个有效的方式,作为一个WEB项目,你不可能在用户需要访问的时候,告诉用户做那么复杂的设置。

有什么方式能够实现

页面不能跳转,在本页内实现下载功能。

使用MVC3的AcetionResult返回文件的方式下载,在页面中使用window.location.href="action" 访问这个Action

C#代码:

 public ActionResult About()
{
return File(
"/Content/site.css"//文件路径
, "*/excel"//文件类型
, "Dowloa.xls"//下载文件名称
); ;
}


HTML以及js代码

<mce:script type="text/javascript" src="../../Scripts/jquery-1.4.4.js" mce_src="Scripts/jquery-1.4.4.js"></mce:script>
<mce:script type="text/javascript"><!--
$(document).ready(function () {
$('a').click(function () {
window.location.href = "Home/About"
});
});
// --></mce:script>
<h2>@ViewBag.Message</h2>
<p>
<a >测试</a>
</p>


效果



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐