如何使用Jquery在客户端检查用户是否授权



我正在为 asp.net MVC3 Razor视图工作。我已经创建了基于左侧菜单的每次单击动态加载选项卡。

还有我的jquery:

var form = $("ul#autotab li").click(function () {
                $tabs = $("#tabs").tabs({
                    tabTemplate: "<li id='" + tab_title + "'><a href='#{href}'>#{label}</a> <span class='ui-icon1 ui-icon-close'>x</span></li>",
                    add: $.ajax({
                        type: "GET",
                        url:'/Product/GetDetailsForTab/',
                        success: function (result) {
                            $("#tabs" + counter).html(result);
                        }
                    })
                });
                $tabs.tabs("add", "#tabs" + tab_counter, tab_title);
            }

在这里,如果我单击我们的左侧菜单之一意味着,我想在jquery选项卡功能中检查用户是否授权。如果用户未授权,则表示应重定向默认登录页面。我已经在操作结果中设置了授权属性'/Product/GetDetailsForTab/'

上面的代码正在工作,但问题是,如果未授权,它将重定向带有选项卡内容的登录页面。在这里,我需要在新窗口中重定向页面,而不是选项卡内容区域。

谢谢

你可以看看Phil Haack的以下博客文章。在其中,他演示了一个很好的解决方案,该解决方案允许您在发生 AJAX 请求时防止表单身份验证模块重定向到 LogOn 页面,但返回一个真实的 401 状态代码,您可以在客户端脚本中截获该代码并采取相应的操作。

最新更新