2017-08-17 112 views
2

我試圖顯示與jQuery數組中的項目,但它只是返回[object] [Object]。我在這裏做錯了什麼?通過嵌套循環對象使用jQuery每個

有數據返回格式如下:

Object 
1:{gps: "0.000,0.000", street_name: "First Street", street_name_alt: "1st Street"} 
2:{gps: "0.000,0.000", street_name: "Second Street", street_name_alt: "2nd Street"} 

,我試圖輸出它:

$.each(data.street, function(key, val) {      
     htm+='<ons-list-item id="'+key+'">'; 
     htm+=' '+val; 
     htm+='</ons-list-item>'; 
}); 

回答

2

val是你的對象,關鍵是指標..

你必須嘗試訪問它的屬性。用於離訪問street_name

$.each(data.street, function(key, val) {      
     htm+='<ons-list-item id="'+key+'">'; 
     htm+=' '+val.street_name; 
     htm+='</ons-list-item>'; 
}); 

它不是一個多維陣列順便說一句,這是一個嵌套的對象。

+0

OOOOH,我看到我做錯了什麼。它正在工作!謝謝 :) – user1996496

0

data = {}; 
 
data.street = [{gps: "0.000,0.000", street_name: "First Street", street_name_alt: "1st Street"}, 
 
{gps: "0.000,0.000", street_name: "Second Street", street_name_alt: "2nd Street"}]; 
 

 
var htm = ""; 
 
// updated the arguments to reflect their functions better. 
 
$.each(data.street, function(index, element) {      
 
     htm+='<ons-list-item id="'+index+'">'; 
 
     htm+=' '+element .street_name; 
 
     htm+='</ons-list-item>'; 
 
}); 
 
console.log(htm);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

這是因爲val指的是完整的對象。使用屬性名稱,以獲得正確的結果。