我有一個java腳本的問題。這是我第一次使用JavaScript。
代碼:
$.get(url, function(data){
alert("Data Loaded: " + data);
var obj = JSON.parse(data);
alert(obj.result);
}
服務器返回一個簡單的JSON字符串{"result":"aaaa"}
我怎樣才能提取響應這個JSON字符串? 當我運行此代碼警報顯示未定義。
我有一個java腳本的問題。這是我第一次使用JavaScript。
代碼:
$.get(url, function(data){
alert("Data Loaded: " + data);
var obj = JSON.parse(data);
alert(obj.result);
}
服務器返回一個簡單的JSON字符串{"result":"aaaa"}
我怎樣才能提取響應這個JSON字符串? 當我運行此代碼警報顯示未定義。
這個問題似乎不可重現。
JSON.parse('{"result":"aaaa"}').result
產生「aaaa
」。
做一些更多的調試是這樣的:
$.get(url, function(data){
alert("Data Loaded: " + data);
var obj = JSON.parse(data);
for (key in obj) {
alert(key + ": " + obj[key]);
}
}
這將遍歷在返回的JSON所有的按鍵。希望你在那裏有一個名爲「result」的鍵。
這可能是你實際上不需要解析它。
$.get(url, function(data){
alert(typeof data); // object
alert(data.result); // aaaaa
});
沒有一個dataType
被指定,jQuery.get()
將默認做出一項「智能猜」和相應的解析。
如果你想自己解析它,你可以指定'text'
作爲dataType
。
$.get(url, function(data){
var obj = JSON.parse(data);
alert(obj.result); // aaaaa
}, 'text');
只需調用'obj.result'。 –
馬上就有一個'{'錯配。另外順便問題是什麼?你能解釋一下嗎? – PSL
您不需要用'{'開始每一行。這會導致語法錯誤,從而阻止您的代碼執行*任何操作*。在你解決這個問題之前,在處理其他任何問題時沒有多大用處。我建議你在JavaScript上找到一個體面的教程,並且在嘗試使用jQuery和/或AJAX之前,至少要掌握基本語法。 – meagar