如何从MVC控制器打开新窗口?

时间:2016-02-16 06:16:20

标签: c# asp.net-mvc asp.net-mvc-5

这是我的代码

more

在上面的代码中,当我点击联系人链接时,在同一个窗口中打开下面的URL,但我想从mvc控制器打开新窗口。

6 个答案:

答案 0 :(得分:3)

这不是MVC的问题。这取决于您的HTML代码。应在新窗口中打开的链接应如下所示:

<a href="some url" target="_blank">Click me</a>

请注意target属性。但是,请记住,无论是打开新窗口还是只是新选项卡,都取决于浏览器。

答案 1 :(得分:3)

您可以将目标用于空白页

HTML代码

<input type="button" target="_blank"/>

MVC代码

 @Html.ActionLink(" ", "ActionName", "ControllerName", null, new { target = "_blank", @class = "btn btn-primary fa fa-list"})

答案 2 :(得分:1)

新的标签/窗口实际上可以从你的html页面控制,而不是从服务器端代码控制。

在您的主播(target='_blank')标记中使用<a>属性。

如果您使用纯HTML,请执行:
<a href="https://developer.mozilla.org" target="_blank">MDN</a>

对于rajor助手,请执行 @Html.ActionLink("visit the page", "action", "controller", new {target="_blank"})

以下是帮助页面: https://developer.mozilla.org/en/docs/Web/HTML/Element/a

答案 3 :(得分:1)

这样的事情应该从视图或javascript而不是从控制器完成。

的javascript:

window.open("Link URL")

剃刀

@Html.ActionLink("bla", "Action", new {controller="Controller"}, new {target="_blank"})

<a href="@Url.Action("Action", "Controller")" target="_blank">bla</a>

答案 4 :(得分:0)

Dim strScript As String = "window.open('../Newpage.aspx', 'new_window');"

Page.ClientScript.RegisterClientScriptBlock(Me.GetType(), "Open window", strScript, True)

答案 5 :(得分:0)

以下代码可以帮助您

<强>控制器: -

    public ActionResult ABC()
    {
        if(Request.HttpMethod == "POST")
            return Redirect("http://www.google.com");
        else
            return View();
    }

查看: -

@using (Html.BeginForm("ABC", "Test", FormMethod.Post, new { target = "_blank" }))
{
   <input type="submit" value="Contact" id="btnsubmit" />
}

上面的示例只是让您了解如何从您需要在代码中设置此想法的控制器中打开新网址。

在此示例中,控制器是Test,当您发布请求时,例如单击Contact,然后使用target =“_ blank”发布视图,以便在新窗口中打开控制器操作的响应。