想要显示该位置的纬度和经度的邮政编码。下面是我的代码。
function markerLocation() {
var currentLocation = marker.getPosition();
var geocoder = new google.maps.Geocoder();
var location = new google.maps.LatLng(currentLocation.lat(), currentLocation.lng());
geocoder.geocode({ 'latLng': location , function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var add = results[0].address_components[1][1];
document.getElementById('lat').value = add;
}
});
这里我想在lat中显示邮政编码。但是当我使用address_components时,它显示未定义。 请帮助。
答案 0 :(得分:0)
试试这个:
<input id="postal_code"/>
<input id="street"/>
...
脚本
if (status == google.maps.GeocoderStatus.OK) {
for(var i in results[0].address_components) {
// skip items with no types
if(typeof results[0].address_components[i].types == 'undefined') {
continue;
}
if(results[0].address_components[i].types.indexOf('postal_code') > -1) {
document.getElementById('postal_code').value = results[0].address_components[i].long_name;
}
if(results[0].address_components[i].types.indexOf('street') > -1) {
document.getElementById('street').value = results[0].address_components[i].long_name;
}
...
}
}