2014-12-07 58 views
-2

我有一個函數,我提交數據到另一個PHP頁面,輸入到數據庫中。聽取阿賈克斯行動的迴應

$(document).on('click', '.addNumber', function() { 
    var newNum = $('input#newNumber').val(); 

     $.ajax({ 
      type: 'POST', 
      url: '/addNewPhoneNumber.ajax', 
      data: { 
       'bid' : bid, 
       'nbr' : newNum 
      }, 
      dataType : 'json' 
     }); 

}); 

我需要擴展功能,並添加一個檢查我的其他PHP頁面上提交的數字。如果它已經在我的數據庫中,我需要返回一些標誌並在第一頁上顯示一條消息。我知道如何在第二頁上做到這一點,但是如何將回復返回到我的初始頁面?

+0

[jQuery的:返回數據Ajax調用成功後]的可能重複(HTTP://計算器。 com/questions/5316697/jquery-return-data-after-ajax-call-success) – ElefantPhace 2014-12-07 22:06:18

回答

3

添加成功回調這樣

$.ajax({ 
     type: 'POST', 
     url: '/addNewPhoneNumber.ajax', 
     data: { 
      'bid' : bid, 
      'nbr' : newNum 
     }, 
     dataType : 'json', 
     success: function (response) { 
     if(response.status === "success") { 
      // do something with response.message or whatever other data on success 
     } else if(response.status === "error") { 
      // do something with response.message or whatever other data on error 
     } 
    } 
    }); 
+0

無論數字是否在我的數據庫中,我都不會收到錯誤。目前它會返回成功。如果我找到一個匹配,如何讓它返回另一個響應?我只是輸出回聲「錯誤」?對不起,有點困惑與過程。 – santa 2014-12-07 22:10:57

+0

只需在您的php頁面上執行檢查並返回不同的消息。成功只意味着通話成功。看看我的例子,我檢查一個狀態變量... PSUEDO 'if(numberIsInDb)echo'error'else echo'success'' 然後你只需要檢查響應變量,這將是一個字符串,而不是在你的javascript中這樣的對象:'if(response ==='success')'... – JOSEFtw 2014-12-07 22:12:33

0

你可以成功和錯誤回調函數

$.ajax({ 
    type: 'POST', 
    url: '/addNewPhoneNumber.ajax', 
    data: { 
     'bid' : bid, 
     'nbr' : newNum 
    }, 
    dataType : 'json', 
    success: function(response, status, x) { 
     console.log(response) //response is the output of your page.. you can write it somewhere 

    }, 
    error: function(h, s, x) { 
     console.log("error: " + h.statusText) 
    } 
    } 
});