我想遍歷一個JSON對象,並在li
標記中包裝數組中的每個項目。試圖迭代
這裏是我的JSON結構
var classYear = {
"1921": [
'name1', 'name2', 'name3', 'name4'
],
"1933": [
'name5', 'name6', 'name7', 'name8'
],
"1943": [
'name9', 'name10', 'name11', 'name12', 'name13'
]
};
這裏是我的javascript
var container = document.getElementById('classYearContainer');
function classYearOutput(yClass, yId, listId, key, name) {
return '<div class="'+ yClass +'" id="'+ yId +'">' +
'<h4>' + key + '</h4>' +
'<ul id="'+ listId +'">' + name + '</ul>' +
'</div>';
}
function nameList(name) {
return '<li>' + name + '</li>';
}
for(var year in classYear) {
container.innerHTML += classYearOutput(
'category',
'y-' + year,
year + '-list',
year,
nameList(classYear[year])
);
}
有了這個設置我的輸出返回所有的名字在一個li
而非獨立li
標籤。奇怪的是,當我console.log
我得到了預期的結果,但當我return
它把所有的名字在同一li
。
感謝您的任何幫助。
建議使用'createElement'和'appendChild'。字符串容易出錯。 – elclanrs 2015-02-17 23:29:41