2011-04-10 10 views
2
나는 다음과 같은 코드가

:AJAX를 사용하여 리디렉션하는 방법은 무엇입니까?

function get_login() 
{ 
    hideshow('loading2',1); 
    error(0); 

    $.ajax({ 
     type: "POST", 
     url: "The URL", 
     data: $('#logins').serialize(), 
     dataType: "json", 
     success: function(msg){ 

      if(parseInt(msg.status)==1) 
      { 
       succ2(1,msg.txt);     
       setTimeout('go_to_you_page()', 1000); 

      } else if(parseInt(msg.status)==0) { 
       error2(1,msg.txt); 
      } 

      hideshow('loading2',0); 
     } 
    }); 

    return false; 
} 

function go_to_you_page() 
{ 
    window.location = 'myaccount.php';  
} 

사용자가 로그인하지 않은 경우가 index.php?redirect=inbox.php (예를 들어)를 추가합니다

은 어떻게 /inbox.php에 로그인 한 후 사용자를 리디렉션 할 수 있습니까?

미리 감사드립니다.

+0

? 링크를 기반으로 리디렉션을 달성하는 데 적합한 코드가있는 것 같습니다. – Khez

+0

성공 핸들러에서 window.location을 설정하거나 XHR 응답에서 응답 리디렉션으로 응답하십시오. – lsuarez

답변

4

는 다음 URL 매개 변수를 얻을 수 some code있어 :

function get_url_parameter(name) { 
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); 
    var regexS = "[\\?&]"+name+"=([^&#]*)"; 
    var regex = new RegExp(regexS); 
    var results = regex.exec(window.location.href); 
    if (results == null) 
     return ""; 
    else 
     return results[1]; 
} 

당신은 당신의 go_to_you_page() 기능이 사용할 수 있습니다 : 정확히 질문은 무엇입니까

function go_to_you_page() 
{ 
    var redirect_parameter = get_url_parameter('redirect'); 

    // redirect to /myaccount.php if the redirect parameter is not set 
    var redirect = (redirect_parameter === "") ? 'myaccount.php' : redirect_parameter; 

    window.location.href = redirect; 
} 
+0

고마워요! : D –

+0

도와 줘서 기뻐 :) –

+1

정답이지만 게시물 [여기]에 따라 (http://stackoverflow.com/questions/503093/how-can-i-make-a-redirect-page-in-jquery- 자바 스크립트) window.location.replace는 window.location.href보다 사용하는 것이 좋습니다. –

관련 문제