Google Geocoding – Impossible de tirer les coordonnées

J’ai eu de l’aide ici et j’ai essayé de frankenstine deux morceaux de code ensemble pour obtenir le résultat suivant:

L’utilisateur clique sur le bouton Géocode L’utilisateur reçoit les informations suivantes (adresse saisie, ville, état, pays, coordonnées)

C’est le code que j’ai reconstitué avec un peu d’aide: http://jsfiddle.net/QA7Xr/25/

Ceci est le code complet écrit:

var myLatlng = new google.maps.LatLng(31.272410, 0.190898); // INITALIZATION function initialize() { var mapOptions = { zoom: 4, center: myLatlng, mapTypeId: google.maps.MapTypeId.ROADMAP } var map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions); } // GEOCODE function codeAddress() { var address = document.getElementById("address").value; geocoder.geocode({ 'address': address }, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { var address = "", city = "", state = "", zip = "", country = ""; for (var i = 0; i < results[0].address_components.length; i++) { var addr = results[0].address_components[i]; if (addr.types[0] == 'country') country = addr.long_name; else if (addr.types[0] == 'street_address') // address 1 address = address + addr.long_name; else if (addr.types[0] == 'establishment') address = address + addr.long_name; else if (addr.types[0] == 'route') address = address + addr.long_name; else if (addr.types[0] == 'postal_code') zip = addr.short_name; else if (addr.types[0] == ['administrative_area_level_1']) state = addr.long_name; else if (addr.types[0] == ['locality']) city = addr.long_name; } alert('City: ' + city + '\n' + 'State: ' + state + '\n' + 'Zip: ' + zip + '\n' + 'Country: ' + country); } } }); } else { alert("Geocode was not successful for the following reason: " + status); }; }); } initailize(); document.getElementById("codeAddress").onclick = function () { codeAddress(); return false; }; 

Je suis nouveau dans le domaine de la programmation javascript, mais cela devrait fonctionner si le géocodage réussit, il saisit les variables et les dépose dans une boîte de dialog, mais cela ne se fait tout simplement pas. S’agit-il d’une erreur simple entre crochets ou avez-vous écrit quelque chose qui est encore plus erroné?

initailize(); . Je dis juste.

Avoir un violon corrigé (encore): http://jsfiddle.net/d5DBh/

Cette fois-ci, je l’ai fourchue pour que personne ne l’écrase. Les correctifs:

  • Vous avez eu un support supplémentaire près d’autre. Effacé.
  • De plus, vous n’avez jamais défini ni instancié un geocoder . Cela a été ajouté
  • Typo sur initialize .

Veuillez simplifier votre code et lire les corrections apscopes à d’autres questions. Un des trois bugs, j’avais déjà corrigé.