的陣列動態創建分組列表我有對象的嵌套陣列如下:使用對象
result = [
[{"country":"France","continent":"Europe","name":"street a"}],
[{"country":"Brazil","continent":"South America", "name":"street b"},{"country":"Brazil","continent":"South America", "name":"street c"}],
[{"country":"Germany","continent":"Europe","name":"street d"}]
]
注意,這是從對象的排序,使用大陸和然後是國家密鑰後的陣列產生。
我要動態地生成一個列表如下(大陸,然後國家),並把它添加到div
:
- 歐洲
- 法國
- 街
- 德國
- 街道d
- 法國
- 南美
- 巴西
- 街道b
- 街道ç
- 巴西
每次返回的國家和大洲都會有所不同,但結果數組將按照大陸,國家的順序進行分組。
由於我是HTML,CSS和JavaScript的新手,我無法弄清楚如何動態創建這個列表。到目前爲止,我已成功使用僅生成大陸的唯一列表:
for(var i=0;i<result.length;i++){
if($('#continent-list li').filter(function(){
return $(this).text() == result[i][0].continent;
}).length == 0){
$('#continent-list').append('<li>'+result[i][0].continent+'<ul></ul></li>');
}
即我遍歷列表,只有懶得看的第一個元素[結果[I] [0]),並添加這到一個叫做'continent-list'的無序列表。每次我也檢查這個名字是否已經存在於無序列表中,如果它不存在,只有我添加。
你的json中有幾個語法錯誤。這些問題是真的還是錯字?你能解決這個問題嗎? – Taplar
這裏沒有涉及到JSON。請閱讀'json'標籤的使用說明。 – trincot