Сегодня я боролся со следующим:
$.ajax({url:'http://maps.google.com/maps/api/geocode/jsonaddress=Karachi&sensor=false&output=json&callback=?', dataType: 'json', success: function(data){ //eval("("+data+")"); alert(data); } });
Firefox выдает ошибку «Неверная метка» и Chrome «Uncaught SyntaxError: Неожиданный токен:». Я нашел много сообщений об этом, и я пробовал все виды вещей, как eval (), но также:
$.getJSON('http://maps.google.com/maps/api/geocode/jsonaddress=Karachi&sensor=false&output=json&callback=?', function(data){ //eval("("+data+")"); alert(data); } );
Тот же результат. Кроме того, другие данные json работают нормально, например, flickr ("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?). Так что это как-то связано с выводом API Карт Google, я думаю ...
Заранее спасибо.
Вы можете сделать это в картах V3, но вы не можете использовать $ .getJSON для получения данных, вместо этого в API карт есть метод, который извлекает данные, если вы дадите ему адрес.
var geocoder = new google.maps.Geocoder(); geocoder.geocode( { 'address': '10 downing street, London, UK'}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { console.log(results); alert(results[0].geometry.location); } else { alert("Geocode was not successful for the following reason: " + status); } });
эти ссылки имеют всю информацию .... https://developers.google.com/maps/documentation/javascript/geocoding#GeocodingRequests
https://google -developers.appspot.com / карты / документы / JavaScript / примеры / геокодирования-простой
Вы просто не можете этого сделать; AFAIK Geocoder V3 не позволяет callback=?. Проверьте эту ветку для получения дополнительной информации.
callback=?