如何用Html.BeginForm打开新窗口

时间:2015-04-03 09:42:45

标签: html asp.net-mvc

如果提交按钮位于@using Html.BeginForm中,有没有办法打开新窗口?我尝试了以下但它不起作用?

@using (Html.BeginForm("SetCol", "Document", FormMethod.Post, new {target="_blank"})){
<div class="modal-body" data-height-relative="20">
.
.
.
</div>
    <div class="modal-footer">
        <div class="pull-right">
            <input type="submit" value="Senden" class="btn btn-primary"/>
            <a href="@ViewData["closeUrl"]" class="btn btn-primary" @(ViewData["closeUrl"] == "#" ? "data-dismiss=modal" : "")>@Translations.Close</a>
        </div>
    </div>
}

输出是PDF文件:

<html>
  <body marginwidth="0" marginheight="0" style="background-color:  rgb(38,38,38)">
 <embed width="100%" height="100%" name="plugin" src="http://localhost:54906/Document/SetCol?id=108" type="application/pdf">
  </body>
</html>

1 个答案:

答案 0 :(得分:4)

以下代码适用于我的代码。可能与您的行动方法有关。

@using (Html.BeginForm("About", "Home", FormMethod.Post, new { target = "_blank" })) 

正如您在评论中提到的,此方法返回PDF文件,您可以使用window.open,如:

window.open("../Document/SetCol", "_blank");

window.open("@Url.Action("LoadReport", "ExportReport")" + link, "_blank");

您必须明确定义点击事件处理程序。