2016-04-22 16 views
1

私はGoogle Mapsオートコンプリートを特定の都市の結果に限定する必要がある状況にあります。Googleマップのオートコンプリート(都市内)

$(document).ready(function() { 

    var autocomplete = 
     new google.maps.places.Autocomplete(
      document.getElementById('addr')); 

    autocomplete.setTypes(['address']); 
    autocomplete.setComponentRestrictions({'country':'us'}); 

    google.maps.event.addListener(autocomplete, 'place_changed', 
     function() { 
      var place = autocomplete.getPlace(); 
      $('#name').text(place.formatted_address); 
      $('#lat').text(place.geometry.location.lat()); 
      $('#long').text(place.geometry.location.lng()); 

      var service = new google.maps.DistanceMatrixService(); 
      service.getDistanceMatrix({ 
        origins: [new google.maps.LatLng(
         place.geometry.location.lat(), 
         place.geometry.location.lng())], 
        destinations: ['Raleigh, NC'], 
        travelMode: google.maps.TravelMode.DRIVING, 
        unitSystem: google.maps.UnitSystem.IMPERIAL 
       }, 
       function(response, status) { 
        if (response.rows[0].elements[0].status == 'ZERO_RESULTS') 
         $('#distance').text('No dice!'); 
        else 
         $('#distance').text(response.rows[0].elements[0].distance.text); 
       }); 
     }); 
}); 

ここでは私が取り組んできた謎です。 http://jsfiddle.net/272tx3qy/8/ 私はローリー、(ローリー、ノースカロライナ州でのみ街路やアドレス)NCのみに入力ボックスの結果を制限しようとしています

Googleマップを使用して達成することが可能なものですか?

お時間をいただきありがとうございます。

答えて

0

あなたはアドレスに返される結果を制限するであろう、タイプとしてジオコードを使用してオートコンプリートオプションを設定することができ、これを試してみてください:

function initialize() { 
var input = document.getElementById('searchTextField'); 
var options = { 
    bounds: yourBounds, 
    types: ['geocode'] 
}; 
autocomplete = new google.maps.places.Autocomplete(input, options); 
} 
関連する問題