Les Lieux de Google API - Lieux de détail demande pas défini
Je suis en train de récupérer des détails du lieu à l'aide de Google adresses de la Bibliothèque. Lorsque vous cliquez sur le marqueur de lieu je veux être en mesure de voir l'adresse, le nom, site web, etc.
Je suis en utilisant le tutoriel suivant:
http://code.google.com/apis/maps/documentation/javascript/places.html
Tout semble aller assez bien. Dans mon marqueur, je peux afficher le nom et la notation, mais l'adresse, site web et numéro de téléphone apparaissent tous comme des "indéfini". Est-ce parce que Google n'a pas l'information, je suis en demandant à ces lieux? Ou ai-je fait quelque chose de mal?
Voici le code que j'utilise:
var map;
var infowindow;
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);
});
}
De l'aide ou des idées sera grandement apprécié.
Acclamations.
JA
OriginalL'auteur Jim | 2012-03-01
Vous devez vous connecter pour publier un commentaire.
Vous êtes en train de faire un Lieu de Recherche, qui ne retourne pas tous les champs que vous utilisez:
http://code.google.com/apis/maps/documentation/javascript/places.html#place_search_responses
Afin d'obtenir l'adresse, site web, etc, vous aurez également besoin d'appeler
place.getDetails()
, en passant de la Place dureference
. Voir:http://code.google.com/apis/maps/documentation/javascript/places.html#place_details_requests
Environ, votre code devrait changer:
Pas de problèmes! Content d'avoir pu aider 🙂
salut.. je suis confronté au même problème et j'ai essayé cette solution. mais pas obtenir de résultat ." de service.getDetails(demande, la fonction(détails, statut)" où déclarer ce service de variable ? dois-je déclarer une fois de plus à créer un marqueur de la fonction ?
Salut Thakur. Le
service
variable est définie comme une variable globale dans lainitialize()
fonction. Voir la question d'origine, pour le code:service = new google.maps.places.PlacesService(map);
Voici le lien de ma question stackoverflow.com/questions/47547932/... , j'ai essayé même code mais de ne pas avoir lieu, latitude,etc et aussi de marqueur popups ne sont pas indiqué sur leur propre site. Elle présente tous les marqueurs sur le dernier marqueur.
OriginalL'auteur Mike Jeffrey