您好,我在jQuery中的ajax請求有問題。json_encode在使用jquery.get發佈數據時返回數組作爲字符串()
當我用我的GET請求不發送如預期響應的任何數據,我收到我的陣列,並且可以訪問值:
$.get(
loadUrl,
function(data) {
useReturnData(data);
},
"json"
);
function useReturnData(data){
leftPlayer = data;
alert(leftPlayer[4]);
};
可正常工作,我收到我的「528」值成爲我的左派玩家[4]的價值。
但是,當我改變我的請求發送一個數據的請求到PHP像這樣:
$.get(
loadUrl,
{ type: "left" })
.done(function(data) {
useReturnData(data);
},
"json"
);
function useReturnData(data){
leftPlayer = data;
alert(leftPlayer[4]);
};
收到我的數據似乎是在字符串格式爲JavaScript。 我的警報打印「5」(如果數組是字符串,則爲第4個字符)
當警報leftPlayer時。我發現,在其中我發送沒有數據的可變打印爲第一請求:355,355,355,355,528等...
而在所述第二請求,其中I DO發送打印數據:
[355,355,355,355,528 ,等等]
注意[]。它不被識別爲數組。
它訪問的php文件在每個請求中絕對沒有變化,因爲我現在正在測試。發送的數據目前甚至不在php文件中使用。
任何想法我錯了嗎?
您應該將''json「'參數傳遞給'$ .get()'函數,但是您將它傳遞給'.done()'函數。 – nnnnnn
我明白了。我嘗試使用: –
$獲得( \t \t使用loadURL, \t \t {類型: 「左」}, \t \t 「JSON」) \t \t .done(功能(數據){ \t \t \t useReturnData(data); \t \t} \t); - 但沒有改變 –