首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Google Maps Javascript API V3反向地理编码检索邮政编码

使用Google Maps Javascript API V3反向地理编码检索邮政编码
EN

Stack Overflow用户
提问于 2011-03-17 23:12:38
回答 19查看 58.5K关注 0票数 23

每当googlemaps视图中心发生变化时,我都会尝试使用邮政编码向我的数据库提交一个查询。我知道这可以通过反向地理编码来完成,如下所示:

代码语言:javascript
复制
google.maps.event.addListener(map, 'center_changed', function(){
newCenter();
});
...
function newCenter(){
var newc = map.getCenter();
geocoder.geocode({'latLng': newc}, function(results, status){
if (status == google.maps.GeocoderStatus.OK) {
  var newzip = results[0].address_components['postal_code'];
  }
});
};

当然,这段代码实际上并不起作用。所以我想知道,为了从结果数组中提取邮政编码,我需要如何更改它。谢谢

EN

回答 19

Stack Overflow用户

回答已采纳

发布于 2011-03-17 23:44:56

好了,我明白了。这个解决方案比我希望的要难看一些,我可能不需要最后一个for循环,但这是为其他需要从address_components[]中提取垃圾的人提供的代码。这位于地理编码器回调函数中

代码语言:javascript
复制
// make sure to initialize i
for(i=0; i < results.length; i++){
            for(var j=0;j < results[i].address_components.length; j++){
                for(var k=0; k < results[i].address_components[j].types.length; k++){
                    if(results[i].address_components[j].types[k] == "postal_code"){
                        zipcode = results[i].address_components[j].short_name;
                    }
                }
            }
    }
票数 11
EN

Stack Overflow用户

发布于 2012-04-07 01:43:56

使用underscore.js库http://documentcloud.github.com/underscore/#find可以很容易地做到这一点

代码语言:javascript
复制
_.find(results[0].address_components, function (ac) { return ac.types[0] == 'postal_code' }).short_name
票数 14
EN

Stack Overflow用户

发布于 2011-11-09 09:42:03

使用JQuery?

代码语言:javascript
复制
var searchAddressComponents = results[0].address_components,
    searchPostalCode="";

$.each(searchAddressComponents, function(){
    if(this.types[0]=="postal_code"){
        searchPostalCode=this.short_name;
    }
});

short_name或long_name将在上面工作

"searchPostalCode“变量将包含邮政编码(zip?)当且仅当您从Google Maps API获得一个时,才进行编码。

有时,您的查询不会得到"postal_code“作为返回。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5341023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档