从 JSON 检索嵌套数据时出现问题

Problems retrieving nested data from json

本文关键字:问题 数据 JSON 检索 嵌套      更新时间:2023-09-26

我正在做一个小项目,我做了以下json数据-> http://www.smartbustracking.be/json/data.json。

下面的代码循环遍历我的 json 数据。我可以成功地阅读"busuur",但不能很好地阅读bussen的嵌套。

我写的代码是错误的吗我的语法不正确

      <script type="text/javascript" language="javascript">
            $.getJSON("http://www.smartbustracking.be/json/data.json", function(json){
                //$each is the same as for loop
                $.each(json, function(i, field) {
                    $("#bussen").append("<li><a href='javascript: World.onPoiDetailMoreButtonClicked();'>" + field.busuur  + " " + field.bussen.busnummer + ": " + field.bussen.busnaam + "</><li><br />");
                });
            });
        </script>

bussen是一个数组

"bussen":[{"busnummer":"530","busnaam":"test bus 1"},{"busnummer":"540","busnaam":"mechelen"}]

您需要循环访问其项目

例如,要只获取你要做的第一项

 $.each(json, function(i, field) {
                    $("#bussen").append("<li>..." + field.bussen[0].busnummer + ": " + field.bussen[0].busnaam + "</><li><br />");
                });

你可能(!)想这样做:

  $.each(json, function(i, field) {
                  var a="<li><a href='javascript: World.onPoiDetailMoreButtonClicked();'>" + field.busuur  + " " ;
                  var b='';
                     for (var k=0;k<field.bussen.length;k++)
                               b+=   field.bussen[k].busnummer + ": " +field.bussen[k].busnaam ;
               console.log(a+b+ "</><li><br />");    
                });