2013-04-25 2 views
-4

이 같은 JQuery와 아약스를 사용하고 있습니다 : 사용자가 제공 한 사용자 정보가 정확하지 않으면Jquery Ajax에서 성공을 보이지 않는 방법은 무엇입니까?

function deactivate() { 
    var user_info=document.getElementById('user_info').value; 
    if (user_info=''){ 
    alert('Enter password!'); 
    return false; 
    } 
    else { 
     $.ajax({ 
       type: "GET", 
       url: "/deactivate/", 
       data: {user_info:user_info}, 
       success: function(data){ 
        $('#deactivate_modal').html(data) 

       } 
      }); 
     } 
} 

, 오류가 완벽하게 괜찮 사업부에 표시되어 있지만 올바른 만약 내가 페이지를 원하는 새로 고쳐야합니다 로그인 페이지로 사용자 리디렉션. 어떻게해야합니까?

+1

'window.location.href = login.php' 성공의 함수 내에서? – PlantTheIdea

+0

답변을 올리실 수 있습니까? 오류 메시지가 표시되어야하는 경우 성공하면 페이지를 새로 고침하고 싶지 않습니다. – pynovice

+0

사용자 세부 정보가 올 바르면 서버는 유효성을 확인할 수있는 응답을 반환합니까? –

답변

1

서버가 응답을 반환하면 (html, json, 일반 텍스트 등이 될 수 있음) 성공 함수에서 응답을 확인할 수 있습니다. 아래 코드는 사용자 정보가 맞으면 서버가 'success'응답을 반환 할 것으로 예상합니다. 응답은 무엇이든 될 수 있습니다. 단지 서버의 응답으로 '성공'을 대체하십시오.

첫 번째 if 문에서 할당 연산자를 사용하고 있고 키/값 쌍에 키를 따옴표로 묶어 두어야한다는 사실을 확인했습니다. 그렇지 않으면 변수의 내용으로 바뀝니다.

코드 예제 :

function deactivate() { 
    var user_info = document.getElementById('user_info').value; 
    if (user_info == '') { 
     alert('Enter password!'); 

     return false; 
    } 
    else { 
     $.ajax({ 
      type: "GET", 
      url:  "/deactivate/", 
      data: {'user_info': user_info}, 
      success: function (data) { 
       if (data === 'success') { 
        window.location = 'http://www.mydomain.com/myPageAFterLogin' 
       } else { 
        $('#deactivate_modal').html(data) 
       } 
      } 
     }); 
    } 
} 
+0

당신의 대답은 훨씬 포괄적이어서 나는 내 것을 삭제하고 너의 업적을 업 (좋은 일)했다. 앞으로는 다른 사람의 대답에 대해 의견을 말하면 자신의 답변을 제공 할 때 다른 사람의 대답을 downvoting하는 것만큼이나 실제와 같은 행동이 될 것입니다. 좋은 연주하자! :) – PlantTheIdea

+0

미안 해요, 내 대답을 게시, 새로 고침하고 당신 것이 거기에 있었다. 그렇지 않으면 너를 편집했을 뿐이야. =) –

+0

잡히지 않은 TypeError : null의 속성 'value'을 읽을 수 없음 – pynovice

관련 문제