2010-10-08 3 views
1

Я работаю с Google maps v3, и я хочу получить краткое название страны, где маркер был геокодирован. Но я не могу получить subchild short_name из xml-карт google. Возвращенный xml вот так: http://code.google.com/intl/hu/apis/maps/documentation/geocoding/#XMLПолучите значение subchild из xml с jQuery

Мне нужен «US» из этого примера. Это моя функция:

function codeLatLng(latlng) { 
    if (geocoder) { 
    geocoder.geocode({'latLng': latlng}, function(results, status) { 
    if (status == google.maps.GeocoderStatus.OK) { 
     var str = ''; 
     jq.each(results, function(){ 
     str += this.formatted_address+'|'; 
     }); 
     str = str.split('|'); 
     jq('#address').text(str[0]); 
    } 
    }); 
    } 
} 

Но мне нужно бы «short_name» subchild под 7 address_component. Спасибо!

Извините за мой английский ...

ответ

0

Вы решили свою проблему? Если не пробуйте эту функцию:

function codeLatLng(latlng){ 
    if (geocoder) { 
     geocoder.geocode({ 
      'location': latlng 
     }, function(results, status){ 
      if (status == google.maps.GeocoderStatus.OK) { 
       var str = ''; 
       var i = 0, len = results.length, loop = true; 
       while (i < len && loop) { 
        for (var j = 0, len2 = results[i].address_components.length; j < len2; j++) { 
         if (results[i].address_components[j].types[0] == 'country') { 
          str = results[i].address_components[j].short_name; 
          loop = false; 
          break; 
         } 
        } 
        i++; 
       } 
       jq('#address').text(str); 
      } 
     }); 
    } 
} 
+0

Это работает очень хорошо, спасибо! – kree

Смежные вопросы