2012-01-18 120 views
1

会话过期后导航回登录页面时遇到了一个小问题。我有一个链接在我的页面上使用ajax查看密码,如果会话没有过期,“查看密码”链接将被密码替换一会儿;否则,它将导航到登录页面。我用这个JavaScript来检查是否SEESION仍然存在或不会话到期时通过AJAX导航到登录页面

$(document).ready(function() { 

    $(document).bind("ajaxComplete", function(event, response, ajaxOptions) { 
     if (response.getResponseHeader('SEESION_EXP') === '1') { 
      self.location = _CONTEXT_PATH; 
      return false; 
     } 

    }); 

}); 

这里的问题是,登录页面将被放回了一下密码发生之前用户实际上导航到登录页面。无论如何要解决这个问题吗?

回答

0

请检查什么是response.getResponseHeader('SEESION_EXP')值,如果它是1 然后用window.location = _CONTEXT_PATH;

1

只是让你可以在客户端使用它来验证一个字符串。例如,我的链接调用一个servlet,如果session过期,它将返回'redirectLogin'作为repsonse给客户端。如果reponseText等于'redirectLogin',则使用window.location.replace导航到期望的页面

$('#id_of_link').click(function(event) { 
      event.preventDefault(); 

      $.get('ActionServlet', function(responseText) { 

      if(responseText=="redirectLogin") 
       window.location.replace("desired url"); 
     }); 
    }); 
相关问题