【发布时间】:2012-09-06 05:33:05
【问题描述】:
我正在使用此代码获取用户完整的地址信息
function getGeo() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (a) {
$("#geoLoc").html("Determing your location..");
$.post("https://mysite.com/getloc.php?l=" + a.coords.latitude + "," + a.coords.longitude, function (b) {
var c = jsonParse(b);
geo_adres = c.results[0].formatted_address;
latitude = a.coords.latitude;
longitude = a.coords.longitude;
$("#geoLoc").html(c.results[0].formatted_address);
$("#geoLoc").show("slow")
})
}, function (a) {
alert(geolocationErrorMessages[a.code])
}, {
enableHighAccuracy: true,
maximumAge: 12e4
});
return false
} else {
alert("Your browser doesn't support geo-location feature...")
}
}
编辑: getloc.php 包含此代码(javascript 中的 c var)
$data = file_get_contents("https://maps.googleapis.com/maps/api/geocode/json?latlng=". $_GET['l'] ."&sensor=false");
print $data;
实际上我想要的只是获取用户的城市和国家/地区信息city, country
我应该如何更改这个c.results[0].formatted_address 来实现这一点?
【问题讨论】:
-
我编辑了我的问题,请检查
-
您应该查看地理编码器 api 的文档,here。我将首先检查数组
c.results[0].address_components[]的内容。 -
@Ahmetvardar 检查我发布了一个答案,希望它会帮助你:)
标签: javascript google-maps-api-3 google-api