我發佈了一個奇怪的comportment,使用帶有jquery的ajax請求,在頭文件下面的代碼中.STATUS無法在名爲'status'的變量中檢索到,它似乎工作正常罰款與另一個變量名,我想知道爲什麼?在ajax回調中使用變量'status'
$.ajax({
type: "GET",
url: myConnect.prototype.URL,
data: params,
error: this.errorHandler,
success: function(data){
response = JSON.parse(data);
status = response.STATUS;
if(status.SUCCESS){ //never true since status is not an object.
console.log('success !');
}
}
});
數據是:{"STATUS":{"SUCCESS":1,"DESCRIPTION":""}}
狀態變量設置爲一個字符串,我可以看到它在Chrome的關注表達看法值:
status: "[object Object]"
,但如果我把這個變量「 t'(或其他)的條件將是真實的,它會記錄'成功!'
有什麼解釋?
編輯: 響應由鉻顯示解析對象:
response : Object
STATUS: Object
DESCRIPTION: ""
SUCCESS: true
_proto_: Object
_proto_: Object
請注意'數據'不存在...您在函數參數中將其稱爲'dara' – musefan 2013-03-20 14:41:53
首先,將您的'dataType'設置爲'「json」'並移除'JSON.parse',讓jQuery爲你解析。儘管在理論上應該不會對結果產生任何不可區分的影響。如果您將console.log數據解析爲對象後獲得了什麼結果? – 2013-03-20 14:44:43
你有一個小提琴的例子嗎? – 2013-03-20 14:45:01