从json Array向Google地图添加标记

时间:2018-03-11 06:08:36

标签: arrays json for-loop

  

这是我糟糕的代码

function loaddata() {
            var url = "http://localhost/Geocording/api.php";
            $.getJSON(url, function (data) {
                var  json = data
                for (var i = 0, length = json.length; i < length; i++) {

                    var val = json[i],
                      var  latLng = new google.maps.LatLng(val.lat, val.lng);

                    console.log(latLng)
                }

            });

        }
  

我试图使用json数组从我自己的api获取详细信息。   但它不起作用。

{"location":[{"name":"Home 1","lat":"6.824367","lng":"80.034523","type":"1"},{"name":"Grid Tower 1","lat":"6.82371292","lng":"80.03451942","type":"1"},{"name":"Power Station A","lat":"6.82291793","lng":"80.03417451","type":"1"}],"success":1}
  

这是来自我的api.php的json回复

1 个答案:

答案 0 :(得分:0)

首先尝试清除然后应用它。首先清楚地阅读JSON然后继续在您的代码中应用它。这是工作代码。

 function loaddata() {
        var url = "http://localhost/Geocording/api.php";
        $.getJSON(url, function (data) {
            var  json = data['location'];
            for (var i = 0, length = json.length; i < length; i++) {

               var val = json[i];
               var  latLng = new google.maps.LatLng(val['lat'], val['lng']);

                console.log(latLng)
            }
        });
    }

希望这可以帮到你!