javascript - Looping through JSON to place markers on a Google map -


i trying generate google map using jquery , javascript. values latitude , longitude stored in json file. when user clicks state name needs generated.

the problem code graph getting genrated index[0]. loop not working appropriately. graph new york generated points nepal rather new york. here code:

for (var in data.universitylist) {     var lat = data.universitylist[i].lat;     var lng = data.universitylist[i].lng;      var map = new google.maps.map(document.getelementbyid('map'), {         center: {             lat: lat,             lng: lng         },         scrollwheel: false,         zoom: 8     });     var marker = new google.maps.marker({         map: map,         position: {             lat: lat,             lng: lng         },         title: 'hello world!'     }); }; 

the json file:

var data = {     "universitylist": [{             "name": "columbia university",             "city": "new york",             "state": "ny",             "lat": 40.7127,             "lng": 74.0059         },{             "name": "stanford university",             "city": "stanford,",             "state": "ca",             "lat": 37.0000,             "lng": 120.0000         },{             "name": "duke university",             "city": "durham",             "state": "nc",             "lat": 35.5000,             "lng": 80.0000         },{             "name": "university of pennsylvania",             "city": "philadelphia",             "state": "pa",             "lat": 41.0000,             "lng": 77.5000         },{             "name": "northcentral university",             "city": "prescott valley",             "state": "az",             "lat": 34.0000,             "lng": 112.0000         },{             "name": "johns hopkins university",             "city": "baltimore",             "state": "md",             "lat": 39.0000,             "lng": 76.7000         }, {             "name": "northwestern university",             "city": "evanston",             "state": "il",             "lat": 40.0000,             "lng": 89.0000         },{             "name": "rice university",             "city": "houston",             "state": "tx",             "lat": 31.0000,             "lng": 100.0000         },{             "name": "university of southern california",             "city": "los angeles",             "state": "ca",             "lat": 37.0000,             "lng": 120.0000         },{             "name": "georgia institute of technology",             "city": "atlanta",             "state": "ga",             "lat": 32.9605,             "lng": 83.1132         }     ] }; 

your problem re-generating map every iteration within for loop.

try taking outside, , change for in for:-

var data = {    "universitylist": [{      "name": "columbia university",      "city": "new york",      "state": "ny",      "lat": 40.7127,      "lng": 74.0059    }, {      "name": "stanford university",      "city": "stanford,",      "state": "ca",      "lat": 37.0000,      "lng": 120.0000    }, {      "name": "duke university",      "city": "durham",      "state": "nc",      "lat": 35.5000,      "lng": 80.0000    }, {      "name": "university of pennsylvania",      "city": "philadelphia",      "state": "pa",      "lat": 41.0000,      "lng": 77.5000    }, {      "name": "northcentral university",      "city": "prescott valley",      "state": "az",      "lat": 34.0000,      "lng": 112.0000    }, {      "name": "johns hopkins university",      "city": "baltimore",      "state": "md",      "lat": 39.0000,      "lng": 76.7000    }, {      "name": "northwestern university",      "city": "evanston",      "state": "il",      "lat": 40.0000,      "lng": 89.0000    }, {      "name": "rice university",      "city": "houston",      "state": "tx",      "lat": 31.0000,      "lng": 100.0000    }, {      "name": "university of southern california",      "city": "los angeles",      "state": "ca",      "lat": 37.0000,      "lng": 120.0000    }, {      "name": "georgia institute of technology",      "city": "atlanta",      "state": "ga",      "lat": 32.9605,      "lng": 83.1132    }]  };    var map = new google.maps.map(document.getelementbyid('map'), {    center: {      lat: 33,      lng: 100    },    scrollwheel: false,    zoom: 3  });    (var = 0; < data.universitylist.length; i++) {    var lat = data.universitylist[i].lat;    var lng = data.universitylist[i].lng;      console.log(i, lat, lng);    var marker = new google.maps.marker({      map: map,      position: {        lat: lat,        lng: lng      },      title: 'hello world!'    });  };
#map {    height: 400px;  }
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js"></script>  <div id="map"></div>


Comments

Popular posts from this blog

java - Run spring boot application error: Cannot instantiate interface org.springframework.context.ApplicationListener -

python - pip wont install .WHL files -

Excel VBA "Microsoft Windows Common Controls 6.0 (SP6)" Location Changes -