2011-04-06 2 views
1

지오 코딩에 의해 반환 된 검색 결과를 확대하려고합니다. 나는이 같은 http://tech.cibul.org/wp-content/uploads/2010/05/geocode/index.html (자습서 여기 http://tech.cibul.org/geocode-with-google-maps-api-v3/) jquery UI 자동 완성 입력 만들기입니다.지오 코딩 결과 확대 (모든 정치적 반환이 반환 됨)

예를 들어, 위치 표시 줄에 'waterloo'를 입력하면 1 옵션을 얻을 수 있습니다. Waterloo, ON, Canada.

다른 모든 워털루는 어떨까요?

http://en.wikipedia.org/wiki/Waterloo이 코드의 핵심입니다 : 내 경험에

$('input[name="location"]').autocomplete({ 
    source: function(request, response) { 
     geocoder.geocode({'address': request.term }, function(results, status) { 
      response($.map(results, function(item) { 
       return { 
        label: item.formatted_address, 
        value: item.formatted_address, 
        latitude: item.geometry.location.lat(), 
        longitude: item.geometry.location.lng() 
       } 
      })); 
     }) 
    } 
}); 
+0

에 대한 당신이 장소 이름의 목록을 제공하려는 경우, 당신은 몇 가지 다른 데이터 소스가 필요하다는 결론에 도달했습니다? –

+0

@pekka 확실히 업데이트되었습니다. –

답변

0

, 심지어는 V3 및 지역 바이어 싱 (관련 질문 here와 위치 제안의 제정신 목록을 만들기 위해 지오 코딩 API를 얻을 수 없다).

지도 API에서 모호한 이름을 입력했을 때 얻은 것과 크게 다릅니다. 나는 어떤 해결 방법도 모르고있다.

난 당신이 여기에 몇 가지 코드를 표시 할 수 있습니다 예를 Wikipedia's list of cities.

+0

예 다른 경로를 살펴 봐야 할 것 같습니다. 위키 피 디아 아이디어는 목록을 좁히고 싶지 않다는 점을 제외하고는 좋지만, 영국의 결과를 먼저 보여주기 위해 리턴 된 순서를 편향시켜야합니다. 예를 들어, 여전히 사용자가 콩고, 중국, 미국, 베네수엘라, 영국 또는 독일에 거주하는 마을을 선택할 수 있기를 바랍니다. 젠장, 나는 그렇게 열심히했을 것이라고 상상하지 못했을 것이다. –

+0

@ 콜린 알아, 악취가 난다. Google은 모든 데이터를 가지고 있지만 도시 목록을 제공 할 수 있어야합니다.하지만 어떤 이유로 든 그렇지 않습니다. 지도 API 내에서이 문제에 대한 해결책을 찾은 경우 핑을 보내 주시면 감사하겠습니다. 지금은 타협안을 해결했습니다. 그러나 내가 볼 수있는 한, 방법은 없습니다. –

+0

이 질문에 대한 내 업데이트를 확인하십시오. http://stackoverflow.com/questions/5555307/smart-location-form-field - 여기 http://jsfiddle.net/ekzMN/95/에서 작업하고 결합했습니다. 이것은 Google 지오 코더를 사용하여 samrter 결과를 제공하는 보조 소스입니다. 그래도 약간의 작업이 필요합니다. 당신이 개선을 생각해 내면 알려주세요. 나는 Google Geocoder를 단독으로 사용하는 것만큼이나 정확한 것으로 표시했습니다. –