2017-01-28 68 views
0

我正在使用PHP Mailer,我在發送郵件php文件的末尾添加了這個,所以我可以使用AJAX表單獲得響應。jQuery AJAX轉到Page

if(!$mail->send()) { 
       $resp['errmessage'] = 'Mail error: '.$mail->ErrorInfo; 
      } else { 
       $resp['errmessage'] = 'Message sent succesfully!'; 
       $resp['status'] = 'success'; 
      } 
echo json_encode($resp); 

我有這樣的jQuery目前:

$(document).ready(function() { 
var theForm = $(".my-form"); 
theForm.validate({ 
submitHandler: function(theForm) { 
$('#send-button').hide(); 
$('#loading-button').show(); 
$.ajax({ 
type: 'POST', 
    url: '<?php echo $domain; ?>/thefile.php', 
    success: function(response) { 
       if (response.status == 'success') { 
       $('#loading-button').html('sent'); 
      } 
      $('#loading-button').html(response.errmessage); 
       }; 
      }); 
     return false; 
} 
    }); 
}); 

而不是給錯誤或狀態消息,雖然它只是轉移到頁面顯示錯誤,是不是我做錯了至今?

謝謝!

+2

你確定JS部分被解僱嗎?聽起來像表單只是執行'action'屬性。 –

+0

你有沒有防止默認?你在控制檯中看到什麼? –

回答

0

header('Content-type: application/json');添加到PHPMailer發送文件後,它工作!