我想從我的服務器,像這樣取得一些JSON數據:
var a = $.ajax({
url: "data.json",
dataType: 'json',
data: null,
error: function(data) {
console.log("error");
},
success: function(data) {
console.log("success");
}
});
當我做到這一點,error
函數被調用(error
被打印到控制檯)。
然而奇怪的是,當我檢查a
我看到正確的響應文本已返回。
a
readyState: 4
responseText: "contents of data.json!"
status: 200
statusText: "OK"
這是怎麼回事?如果請求成功,爲什麼不成功回調觸發?
是'responseText'有效的JSON?您可以使用[JSONLint](http://jsonlint.com/)進行檢查。 –
@ ianpgall的答案是正確的,但你也應該注意,在你的選擇到底是一個額外的逗號對象(6號線)。 – Hal
好點@harrison_m 34,但這似乎不是在JavaScript中的錯誤,至少在較新的瀏覽器。我已經看到,在舊版本的IE中打破東西(也許更新)。做一個簡單的網頁,並測試出來,不應該有一個錯誤 – Ian