2010-02-09 88 views
0

我已經通過jQuery獲得了ajax調用,直到進入回調才執行,沒有錯誤。返回的內容如下所示:jquery Ajax回調

{"UPSELLABLE":true,"OFFERTEXT":"p47r.cfm"} 

只是在做alert(upselldata);將提醒以上數據。但是,如果我嘗試像javascript對象一樣訪問變量upselldata(我認爲jquery已經爲我做了eval工作),變量是未定義的。請參閱下面的代碼:

 $.ajax({ 
     type: "POST", 
     datatype: "json", 
     data: "ProductID=1", 
     url: '/templates/public/upsell_available.cfm', 
     success: function(upselldata) {    
      alert(upselldata.UPSELLABLE); // upselldata.upsellable is undefined!?!?! 
     } 
     }); 

回答

2

使用「dataType」而不是「數據類型」。 Javascript是區分大小寫的,因此,jQuery忽略了你的設置。

請注意,如果您在響應中正確設置標題(我假設您將其作爲文本發回),jQuery可以自動檢測數據類型。

+0

哈哈,賓果。好眼睛。 – Darthg8r 2010-02-09 21:37:49

+0

+1我從來不知道基本的jQuery調用返回了一個JavaScript對象 – Damien 2010-02-09 21:42:45