У меня есть скрытое поле внутри формы:Не удается получить данные GMaps геокодирования
<form>
<input id="distance" name="km" type="hidden">
</form>
И я просто хочу, чтобы заполнить это поле с расстоянием между 2 адреса, выбранного пользователем. Затем я просто представляю его с помощью формы и делаю с ним сервер. Здесь я называю calculateDistance
FUNC:
$('#my_form_id').on("submit", function (e) {
calculateDistance();
// other stuff
return true;
});
Это, как я пытаюсь получить расстояние:
function calculateDistance() {
var startPoint = $('#main_from_route_input').val();
var endPoint = $('#main_to_route_input').val();
var geocoderStart = new google.maps.Geocoder();
var geocoderEnd = new google.maps.Geocoder();
var coordsStart, coordsEnd;
geocoderStart.geocode({'address': startPoint}, function (response, status) {
if(status != google.maps.GeocoderStatus.OK){
alert('Geocode of first address failed: ' + status);
}
coordsStart = response[0].geometry.location;
geocoderEnd.geocode({'address': endPoint}, function (response, status) {
if(status != google.maps.GeocoderStatus.OK){
alert('Geocode of second address failed: ' + status);
}
coordsEnd = response[0].geometry.location;
var distance = (google.maps.geometry.spherical.computeDistanceBetween(coordsStart, coordsEnd)/1000).toFixed(2);
$('#distance').val(distance);
});
});
}
Я пришел с верхним раствором. Но я даже не вхожу в функции обратного вызова. Когда я отлаживаю и получаю обратный вызов, он просто пропускается. Код кажется правильным (так же, как и в других ответах). В чем проблема?
Я получаю значения адресов как 'Copenhagen, Denmark'
и 'Berlin, Germany'
, например. Я попытался сделать это, как в предложениях snipet для кода Google, следующим образом: 'Copenhagen,+Denmark'
(пустое место заменено на +
), но оно не работает.
возможно дубликат [массива Javascript задвиньте его (соль п Пепа стиль)] (http://stackoverflow.com/questions/25145359/javascript-array-push-it-salt-n-pepa- style) – geocodezip
Возможный дубликат [Google Maps API Geocoding Multiple Locations] (http://stackoverflow.com/questions/28320267/google-maps-api-geocoding-multiple-locations) – geocodezip
@geocodezip, я обновил свой вопрос. Проверьте это, пожалуйста. – Milkncookiez