2012-05-05 62 views
1

我做了使用騎自行車通過JSON從數據庫使用jQuery

$.post('getdata.php', {passLong: passLong, passLat: passLat}, 
     function(output){ 

輸出一個AJAX調用我的數據庫保存這是在訪問getdata.php編碼的JSON。我通過JSON

 $.each(output, function(){ 
     console.log(this.CarParkName); 
     }); 

在我剛剛獲得「未定義」控制檯試圖週期。 jQuery中的每個方法都應該循環遍歷JSON並在地圖上繪製標記,當我將PHP放在同一個文件中時,代碼就可以工作,但是由於使用AJAX從數據庫中獲取數據,所以它不起作用。

我試着環路一些不同的東西,但無法找出什麼是錯的。

+0

jQuery網站已關閉。 – paulyay

+0

使用谷歌的緩存版本,那麼:http://webcache.googleusercontent.com/search?q=cache:YCCzEiL-qBIJ:api.jquery.com/jQuery.each/+&cd=1&hl=lv&ct=clnk&gl=lv&client=firefox- a –

+0

您認爲他使用$ .each的方式有什麼錯誤? –

回答

1

「我的JSON是喜歡後者,即[{」 地址 「:」 聖尼古拉斯大道紐約約克郡」, 「CarParkName」: 「麥克阿瑟格倫專賣店」, 「CarParkRef」:「26」}]」基於註釋的討論和對方的回答你的反應

,我認爲這個問題是你正在處理一個字符串,而不是一個JavaScript對象。你只需要將字符串解析成一個對象。 (我曾以爲你正在處理的數據已被解析成一個javascript對象)。

如果字符串看起來完全一樣:

[{"Address":"St Nicholas Avenue York Yorkshire", 
"CarParkName":"McArthur Glen Designer Outlet","CarParkRef":"26"}] 

然後做到這一點:

​​

,你應該是不錯的。

+0

謝謝!我一直在研究這一段時間,並嘗試解析,但顯然沒有這樣做。再次感謝。 – paulyay

1

我經常這樣做:

for(var i in output) { 
    console.log(output[i]); 
} 
+0

感謝您的回答。這將從JSON中一次返回一個字符,我將如何通過名稱訪問值? – paulyay