基本上,我正在尝试为用户打开一个新窗口,以预览他们提交的一些表单数据。
我正在尝试使用代码从我的控制器执行此操作:
Return JavaScript("window.open('http://www.google.com')")
但它只是返回一个文件下载对话框,而不是打开一个新窗口。
我是否错过了某些内容,或者我完全错了?
提前感谢您提供任何帮助
答案 0 :(得分:1)
您可以使用以下方式从控制器操作重定向:
Redirect(YourUrl)
或者如果你想要一个弹出窗口,你应该在你的视图中包含你的javascript并从那里触发它:
<script type="text/javascript">
window.open('http://www.google.com');
</script>
答案 1 :(得分:0)
最好的方法是在ActionLink中添加一个Css类属性,并在jQuery中有一个脚本来处理与这个Css类的所有链接,以便它们在新窗口中打开。你不能在控制器方面这样做,它必须是前端。
<%= Html.ActionLink(item.Title, MVC.Controller.Action(param1, param2, ..,), new { @class="style1" })%>
和jQuery
$('a .style1').click(function () {
window.open(this.href);
return false;
});
如果您没有使用ActionLink或有更多问题,请向我们提供更多详细信息,以便我们提供帮助;)
答案 2 :(得分:0)
我设法通过多个小时的试验和错误来论证我自己的决议,最终将我的表单帖子更改为$ .ajax帖子,这使我能够在成功时执行window.open到相关网址。