从地理编码结果中获取城市? [英] get city from geocoder results?

查看:127
本文介绍了从地理编码结果中获取城市?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



item.formatted_address有效,但不是item.address_components.locality?

  geocoder.geocode({'address':request.term},function(results,status){

response($。map (item.formatted_address ++ item.address_components.locality)
}
});

//返回的数组为:

 results:[
{
address_components:[
{
long_name:London,
short_name:London,
types:[locality,political]
}],
formatted_address:英国伦敦威斯敏斯特//数组的其余部分...



$ b


解决方案

  var arrAddress = item.address_components; 
var itemRoute ='';
var itemLocality ='';
var itemCountry ='';
var itemPc ='';
var itemSnumber ='';

//遍历address_component数组
$ .each(arrAddress,function(i,address_component){
console.log('address_component:'+ i);

if(address_component.types [0] ==route){
console.log(i +:route:+ address_component.long_name);
itemRoute = address_component.long_name;


if(address_component.types [0] ==locality){
console.log(town:+ address_component.long_name);
itemLocality = address_component.long_name;
}

if(address_component.types [0] ==country){
console.log(country:+ address_component.long_name );
itemCountry = address_component.long_name;
}

if(address_component.types [0] ==postal_code_prefix){
console.log(pc :+ address_component.long_name);
itemPc = address_component.long_name;
}

if(address_component.types [0] ==street_nu mber){
console.log(street_number:+ address_component.long_name);
itemSnumber = address_component.long_name;
}
// return false; //打破循环
});


Having problems getting the different arrays content from geocoder results.

item.formatted_address works but not item.address_components.locality?

geocoder.geocode( {'address': request.term }, function(results, status) {

        response($.map(results, function(item) {

        alert(item.formatted_address+" "+item.address_components.locality)
    }            
}); 

// the array returned is;

 "results" : [
      {
         "address_components" : [
            {
               "long_name" : "London",
               "short_name" : "London",
               "types" : [ "locality", "political" ]
            } ],
          "formatted_address" : "Westminster, London, UK" // rest of array...

any help appreciated!

Dc

解决方案

Got this working in the end using:

var arrAddress = item.address_components;
var itemRoute='';
var itemLocality='';
var itemCountry='';
var itemPc='';
var itemSnumber='';

// iterate through address_component array
$.each(arrAddress, function (i, address_component) {
    console.log('address_component:'+i);

    if (address_component.types[0] == "route"){
        console.log(i+": route:"+address_component.long_name);
        itemRoute = address_component.long_name;
    }

    if (address_component.types[0] == "locality"){
        console.log("town:"+address_component.long_name);
        itemLocality = address_component.long_name;
    }

    if (address_component.types[0] == "country"){ 
        console.log("country:"+address_component.long_name); 
        itemCountry = address_component.long_name;
    }

    if (address_component.types[0] == "postal_code_prefix"){ 
        console.log("pc:"+address_component.long_name);  
        itemPc = address_component.long_name;
    }

    if (address_component.types[0] == "street_number"){ 
        console.log("street_number:"+address_component.long_name);  
        itemSnumber = address_component.long_name;
    }
    //return false; // break the loop   
});

这篇关于从地理编码结果中获取城市?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆