Google maps API V3 - Nie można przewidywać geokodowania Autouzupełniania usług

Używamgoogle.maps.places.AutocompleteService aby uzyskać sugestie dotyczące wyszukiwania miejsc, ale nie mogę geokodować niektórych prognoz.

Przykład: kiedy szukam ”burzy rzeka usta„jednym z przewidywań, które otrzymuję, jest”Storms River Mouth Rest Camp, Republika Południowej Afryki', ale tego adresu nie można geokodować, aby uzyskać kratownicę / długość geograficzną, np .:http://maps.googleapis.com/maps/api/geocode/json?address=Storms%20River%20Mouth%20Rest%20Camp,%20South%20Africa&sensor=true

Czy istnieje sposób na uzyskanie wartości długości / długości geograficznej dla prognoz autouzupełniania?

Alternatywnie nie rozumiem, dlaczego autouzupełnianie google zwraca prognozy, których nie mogę geokodować.

Oto podstawowy przykład logiki i kodu, z którym pracuję:

var geocoder = new google.maps.Geocoder();
var service = new google.maps.places.AutocompleteService(null, {
  types: ['geocode'] 
});

service.getQueryPredictions({ input: query }, function(predictions, status) {
  // Show the predictions in the UI
  showInAutoComplete(predictions);
};

// When the user selects an address from the autcomplete list
function onSelectAddress(address) {
  geocoder.geocode({ address: address }, function(results, status) {
   if (status !== google.maps.GeocoderStatus.OK) {
      // This shouldn't never happen, but it does
      window.alert('Location was not found.');
    }
    // Now I can get the location of the address from the results
    // eg: results[0].geometry.location
  });
}

[edytuj] - Wyświetl tutaj działający przykład:http://demos.badsyntax.co/places-search-bootstrap/example.html

questionAnswers(6)

yourAnswerToTheQuestion