当用户点击需要验证的操作时,我想要显示模态窗口。 我看到了这个问题和答案: ASP.NET MVC Authorize Attribute to launch a modal?
我从答案中得到PopupAuthorizeAttribute并在Site.Master文件中写道:
<% if((bool)(ViewData["OpenAuthorizationPopup"] ?? true)) { %>
<script type="text/javascript">
alert("Login needed")</script> **for test
<% } %>
仅在加载页面时显示该消息。但是当我点击一个动作(使用PopupAuthorize)时,无论如何都会动作。
答案 0 :(得分:0)
您可能希望在自定义override
属性上PopupAuthorize
OnAuthorization()
,并且您可以将其重定向到任何可以返回所需ActionResult
或JsonResult
例如,您可以弹出一个模态。
public override void OnAuthorization(AuthorizationContext filterContext)
{
UrlHelper urlHelper = new UrlHelper(filterContext.RequestContext);
filterContext.Result = new RedirectResult(urlHelper.Action("Denied", "Access"));
}