2015-10-07 86 views
0

我是一名初級Web開發人員,我想了解json文件的功能,因爲我不知道。所以我正在按照來自lynda.com的教程有序列表;使用javascript和json

看起來很簡單,我想在變量info中顯示數組元素,但由於某種原因,它在數組中的每個項目之後都添加了另一個數!我已經檢查和比較了教程中的代碼,但它仍然顯示錯誤。

我添加的代碼上的jsfiddle:

https://jsfiddle.net/meyvz462/

這些都是我的循環:

for (var i = 0; i <= info.links.length; i++) { 
    for (key in info.links[i]) { 
     if (info.links[i].hasOwnProperty(key)) { 
      output += '<li>' + 
       '<a href = "' + info.links[i][key] + 
       '">' + key + '</a>' + 
       '<li>'; 
     } // hasOwnProperty ckeck 
    } //for each object 
} //for each array element 

我猜這是什麼那一定是錯的....

謝謝!!!!

回答

3

結束標記錯誤。

output += '<li>' + 
        '<a href = "' + info.links[i][key] + 
        '">' + key + '</a>' + 
        '<li>'; 

必須

output += '<li>' + 
       '<a href = "' + info.links[i][key] + 
       '">' + key + '</a>' + 
       '</li>'; 
+0

謝謝你,我一直在尋找一個錯誤,我不知道我沒有看到它! –

1

你已經錯過了末(https://jsbin.com/yasenivege/1/edit?js,console,output)關閉</li>

var info = { 
     "full_name" : "Someone Else", 
     "title" : "Web Developer", 
     "links" : [ 
     { "blog"  : "http://iviewsource.com" }, 
       { "facebook" : "http://facebook.com/iviewsource" }, 
          { "podcast" : "http://feeds.feedburner.com/authoredcontent" }, 
       { "twitter" : "http://twitter.com/planetoftheweb" }, 
       { "youtube" : "http://www.youtube.com/planetoftheweb" } 
      ] 
     }; 

      var output = ''; 

      for (var i = 0; i <= info.links.length; i++) { 
       var element = info.links[i]; 
       for (var key in element) { 
       console.log(element[key]); 
       if (element.hasOwnProperty(key)) { 
        output += '<li>' + 
          '<a href = "' +element[key] + 
          '">' + key +'</a>'+ 
          '</li>'; 
       }// hasOwnProperty ckeck 
       } //for each object 
      } //for each array element 

      var update = document.getElementById('linksGroup'); 
    console.log(output) 
      update.innerHTML = output; 
+1

謝謝,我真是白癡!我承諾我已經檢查了一千次,但我什麼也看不見。 –

+1

@eve_mf沒有人是白癡! :)另外,我會建議使用JSBin它允許更容易在瀏覽器內進行調試:) –