我需要在 Asp.net MVC 后面的代码中在新选项卡中打开另一个站点。
返回重定向(“网址”);用于在同一选项卡中打开另一个站点。
我需要在 Asp.net MVC 后面的代码中在新选项卡中打开另一个站点。
返回重定向(“网址”);用于在同一选项卡中打开另一个站点。
这对用户来说似乎并不实用,因为在第二个选项卡中进行身份验证后,他们必须刷新第一个选项卡才能看到效果。
的ReturnUrl
属性FormsAuthentication
似乎做你想做的事。当用户需要登录时,他们会被重定向到登录页面,登录后他们会被重定向回来。
如果您正在大量使用 javascript 和 ajax,并且想要保留当前页面的 javascript 变量但需要登录来执行 ajax 调用,那么可能还有另一种解决方案。如果您的 ajax 调用的响应是未经身份验证的标头,请打开一个灯箱或类似的带有用户名和密码字段的东西。使用 ajax postAccountController
再次登录用户。这样,用户将再次通过身份验证,但您保留 javascript 变量。
如果您从表单调用操作并使用提交的输入类型,您可以尝试
<input type="submit" formtarget="_blank" />
如果您使用链接<a>
或 AjaxCall,您可以尝试
<a target="_blank"></a>
或在 ajax 助手设置属性@target="_blank"
这是我的代码cshtml
@using (Html.BeginForm("PersonsReport", "Reports"))
{
<br />
<div style="text-align: center;">
<input type="submit" formtarget="_blank" class="btn btn-primary" value="GetReport" style="width:100%;" />
</div>
<br />
}
控制器.cs
public ActionResult PersonsReport()
{
return Redirect("/PersonsReport.aspx");
}
这只能使用 javascript 来完成。尝试这个。
<%
Response.Write '<script type="text/javascript">
window.open(url);
</script>'
%>
希望它有效。