2013-09-16 3 views
0

jQuery를 사용하여 페이지를 떠나지 않고 양식을 POST합니다. 양식을 게시하는 PHP 페이지는 전자 메일을 보내고 성공하면 '1'을, 실패하면 '0'을 표시합니다.jQuery form에서 응답 받기 POST

PHP 페이지 ('1'또는 '0')의 내용을 검색하고 양식이있는 페이지의 경고 상자에 표시하고 싶습니다 (게시 후에도 페이지가 유지됨).

$(document).ready(function(){ 
    var $form = $('#confirmationForm'); 
    $form.submit(function(){     
    $.post($(this).attr('action'), $(this).serialize(), function(response){ 
     alert(response); 
    },'json'); 
    return false; 
    }); 
}); 

양식이 잘 게시, 정상으로 PHP 스크립트 기능 (이메일이 전송), 그러나 응답이 표시됩니다 :

나는이 시도했다.

+0

작업 페이지에 값을 표시 했습니까? 에코가 표시되면 응답이 나타납니다. –

+0

예 답변은 작업 페이지의 결과에 관계없이 표시됩니다. – Juicy

+1

피들러 또는 크롬 개발자 도구의 응답을 살펴보십시오. –

답변

3

당신은 PHP 스크립트의 응답을 에코해야하고 당신은

success: function(data) { 
     if(data.status == 'success') 
      alert("Thank you you succeeded"); 
     else if(data.status == 'error') 
      alert("Oops there was an error!"); 
    }, 

당신이 내 지점을 가지고 희망 클라이언트 측에서 예를

if(mysql_query($query)) 
     $response_array['status'] = 'success'; 
    else 
     $response_array['status'] = 'error'; 
header('Content-type: application/json'); 
    echo json_encode($response_array); 

?> 

를 들어

을 수행하고 있습니다.

건배 !!!

관련 문제