您好我如下已經得到了一個Ajax代碼:Ajax響應是錯誤的服務器上請求
$.ajax({
type:"POST",
url: 'sample.php',
data:"data="+data,
success: function(server_response) {
$('.functions').ajaxComplete(function(event, request){
if(server_response == 0)
{
showmsg('An email with instructions to reset password has been sent to your email address. Please check it.');
}
else if(server_response == 1)
{
showmsg('Email address was not found in our database. Please enter a valid email address');
}
else
{
showmsg('Some problem occured while sending you an email. Please try again.');
}
exit();
});
代碼工作正常第一次。但是,如果我提交沒有頁面刷新的代碼,則會收到前一個響應。就像我第一次加載頁面一樣,並且我從sample.php得到的響應爲0,消息顯示正確。但是,如果我給一個沒有頁面刷新的ajax調用,並且我從sample.php得到響應爲1,則顯示以前的消息。無論我得到什麼輸出,我都會得到相同的消息,直到我刷新頁面。有什麼問題?代碼正常工作。
您是否確定響應未被緩存?如果您不能確保請求不發送禁用緩存的標頭,請使用包含隨機值和/或時間的查詢參數進行請求。 –
@Delan Azabani:如果請求包含隨機值的查詢,則會生成最後一個響應。我希望在顯示結果後清除該值 – Ken
'server_response'應該是一個字符串,不是嗎? –