2016-05-04 9 views
0

Hey someonse weiß, warum ich meine Adresse im Inhalt meiner Infofenster der Marker nicht bekommen habe? in meiner schleife vor dem geocoderstatus habe ich meine adresseninformation aber nach dem geocoderstatus.ok habe ich undefiniert oder nur die letzte adresse meines arrays.Javascript google maps foreach infowindows

 function geocodeAddress(resultsMap) { 
      // var address = document.getElementById('address').value; 

      var address = ["Brussel","Oostende","Brugge","Gent","Luik"]; 



      for(var i = 0; i < address.length;i++) 
      { 
       //new 
       var geocoder = new google.maps.Geocoder(); 

       var geooptions = { 
        address: address[i] 
       } 




       geocoder.geocode(geooptions, function (results, status) { 
        if (status === google.maps.GeocoderStatus.OK) { 
         // resultsMap.setCenter(results[0].geometry.location) 




         addMarker(resultsMap,address[i], results[0].geometry.location); 




        } else { 
         alert('Geocode was not successful for the following reason: ' + status); 
        } 
       }); 
      } 

     } 

     function addMarker(map,item,location) { 

console.log(item); 

      var marker= new google.maps.Marker({ 
       map: map, 
       position: location, //results[0].geometry.location, 
       title: item 
      }); 

      var infowindow = new google.maps.InfoWindow({ 
       content: item 
      }); 



      marker.addListener('click', function() { 
       infowindow.open(map, marker); 
      }); 

     } 

Antwort

0

Ich habe die Lösung gefunden, es funktioniert nur mit einem jquery.each. Wierd weil es genau wie eine for-Schleife ist.

für (var Element in Adresse) funktioniert auch nicht, weil ich dann nur den Index und nicht den Wert.

Dies behebt das Problem $ (Adresse) .each (Funktion (Index, Element)