Google Places-API - Orte-detail-Anfrage undefined
Ich versuche zum abrufen von details zu diesem Ort mit dem Google Places-Bibliothek. Wenn Sie auf die Ortsmarkierung ich möchte in der Lage sein zu sehen, die Anschrift, den Namen, website etc.
Ich bin mit dem folgenden tutorial:
http://code.google.com/apis/maps/documentation/javascript/places.html
Alles zu gehen scheint, ziemlich gut. In meinem marker kann ich die Anzeige der Namen und der Bewertung, sondern die Adresse, website und Telefonnummer erscheinen als 'nicht definiert'. Ist dies, weil Google nicht die Informationen, die ich bin anfordern auf diese Orte? Oder habe ich etwas falsch gemacht?
Hier ist der code, den ich verwende:
var map;
var Infofenster;
function initialize() {
var pyrmont = new google.maps.LatLng(-33.8665433, 151.1956316);
map = new google.maps.Map(document.getElementById('map_canvas'), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: pyrmont,
zoom: 15
});
var request = {
location: pyrmont,
radius: 5000,
types: ['bar']
};
infowindow = new google.maps.InfoWindow();
service = new google.maps.places.PlacesService(map);
service.search(request, callback);
}
function callback(results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
createMarker(results[i]);
}
}
}
function createMarker(place) {
var placeLoc = place.geometry.location;
var marker = new google.maps.Marker({
map: map,
position: place.geometry.location
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(place.name + "<br />" + place.formatted_address +"<br />" + place.website + "<br />" + place.rating + "<br />" + place.formatted_phone_number);
infowindow.open(map, this);
});
}
Jede Hilfe oder Ideen werden sehr geschätzt.
Cheers.
JA
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du machst einen Ort Suchen, welcher nicht wieder alle Felder, die Sie verwenden:
http://code.google.com/apis/maps/documentation/javascript/places.html#place_search_responses
Damit erhalten Sie die Adresse, website, etc, Sie müssen auch call -
place.getDetails()
, vorbei an der Placereference
. Siehe:http://code.google.com/apis/maps/documentation/javascript/places.html#place_details_requests
Rund, würde der code zu ändern:
service
variable ist definiert als eine Globale variable in derinitialize()
Funktion. Siehe die ursprüngliche Frage für den code:service = new google.maps.places.PlacesService(map);