2013-05-28 116 views
0

下面的代碼工作正常(值插入到數據庫在php頁面中),除了我沒有取回警報中的變量。相反,警告框開始吐出HTML頁面代碼。jquery ajax post成功函數變量

var dataString = 'amID=' + amID + '&aFname=' + aFname + '&aLname=' + aLname + '&aMi=' + aMi + '&aDegree=' + aDegree + '&aEml=' + aEml + '&aAdd=' + aAdd + '&aCity=' + aCity + '&aSte=' + aSte + '&aZip=' + aZip + '&aPhn=' + aPhn; 

     $.ajax({ 
      async: false, 
      url: "create_invite_insert.php", 
      data: dataString, 
      success: function(data) { 

      alert(data); 


      } 
     }); 
+0

問題是什麼? – Alexxus

+0

我懷疑你的「create_invite_insert.php」沒有返回任何數據 –

+0

create_invite_insert.php工作正常,我只是無法在警告框中顯示數據。 – user1041931

回答

0

Alert需要一個字符串,但數據可能在這裏有所不同。嘗試console.log(data);

+0

「試試」不屬於代碼 – Alexxus

+0

哦,謝謝朋友。 – Alex

+0

控制檯顯示「<!doctype html> <! - [if ie IE 7]> <! - [if IE 7] > < ! - [if IE 9]> <! - [if gt IE 9]><! - <! - 「無JS」 級是Modernizr的 - > 「 – user1041931

0

如果要從服務器返回Json,請閱讀post。然後,在ajax成功:

success: function(data) { 
    // first 
    alert(data.paramName); 

    // second 
    var strData = JSON.stringify(data); 
    alert(strData); 
} 

在第一個選項中,您可以看到參數的名稱(paramName)的值。
在第二個選項中,可以將返回的Json數據中的所有參數看作字符串。

+0

警報(strData是);顯示與控制檯「<!doctype html> ....相同」等 – user1041931

+0

它返回一個空白的html頁面。你想用ajax返回什麼? – serefbilge

+0

我希望能看到像這樣的dataString變量: 'amID = 12&aFname = John'等 – user1041931

0

我認爲你不符合定義爲你的ajax請求參數列表的「數據」,「數據」是返回回調函數的參數。

您最好將您的回調參數重命名爲:resp_data或其他任何不會含糊不清的內容。

var dataString = 'amID=' + amID + '&aFname=' + aFname + '&aLname=' + aLname + '&aMi=' + aMi + '&aDegree=' + aDegree + '&aEml=' + aEml + '&aAdd=' + aAdd + '&aCity=' + aCity + '&aSte=' + aSte + '&aZip=' + aZip + '&aPhn=' + aPhn; 

    $.ajax({ 
     async: false, 
     url: "create_invite_insert.php", 
     data: dataString, //this will be your dataString value as "data" ajax parameter 
     success: function(resp_data) { //this will be the response of your ajax request 

     alert(resp_data); 


     } 
    }); 
+0

alert顯示「<!doctype html><! - [if ie IE 7]><! - [if IE 7]><! - [if IE 8]><! - [if IE 9]><! - [if gt IE 9]>< ! - <! - 「no-js」類適用於Modernizr。 - >「 – user1041931

+0

這就是PHP腳本返回的結果。使用瀏覽器直接測試你的php url(使用dataString中的參數)(out of ajax request),你肯定會得到相同的迴應 – dweeves

0

ajax()成功回調傳遞一個Object作爲它的第一個參數。這將是您從服務器返回的數據。默認情況下,jQuery會猜測數據類型。你可以在jQuery的API網站了解更多:http://api.jquery.com/jQuery.ajax/

要提醒的內容OBJET嘗試alert(JSON.stringify(data));

+0

警報顯示「<!doctype html><! - [if lt IE 7]><! - [if IE 7]><! - [如果IE 8]><! - [if IE 9]><! - [if gt IE 9]><! - class =「no-js」lang =「en」><! - 「no-js」類適用於Modernizr。 - >「 – user1041931

+0

看起來您的服務器端腳本正在返回一個HTMl頁面。你可能需要一個新的腳本來代替你所需要的數據。 – cfs