9
<html>
    <head>
        <title></title>

        <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=places&sensor=true"></script>
        <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
        <script type="text/javascript">
            $(function () {
                var input = document.getElementById('location');
                var options = {                    
                    types: ["locality"]
                };

                autocomplete = new google.maps.places.Autocomplete(input, options);
            });
        </script>        
    </head>
    <body>
        <div>Location: <input type="text" id="location" style="width:400px;" /></div>               
    </body>
</html>

オートコンプリートの場所のテキスト入力を生成するコードがあります。Googleのサポートされているタイプのリスト(http://code.google.com/apis/maps/documentation/places/supported_types.html)には、すべてが戻ってくることを望まない場合に使用するタイプとして「地域」が示されています。結果(ビジネスなど)。結果が出ません。

基本的に、私が達成したいのは、都市(IE:トロント)を検索し、「トロント、オンタリオ州、カナダ」のような結果のみを表示することです。おそらく、このAPIをどのように実装するかについて混乱しています。

返信ありがとうございます!

4

5 に答える 5

7

ドキュメントに従って探しているオプションは「ジオコード」(http://code.google.com/apis/maps/documentation/javascript/reference.html#AutocompleteOptions)だと思います:

var options = {                    
    types: ["geocode"]
};
于 2011-11-18T21:16:03.920 に答える
4

国制限を使用することもできます

例:

<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=places&sensor=false"></script>

<script type="text/javascript">
    function initialize() 
    {
      var input = document.getElementById('searchTextField');
      var options = {
          types: ['(cities)'],
          componentRestrictions: {country: "ca"}
      };

      autocomplete = new google.maps.places.Autocomplete(input, options);
    }

    google.maps.event.addDomListener(window, 'load', initialize);
</script>

<input id="searchTextField" type="text" size="50" placeholder="Anything you want!">

これで、ドロップダウンの変更が発生したときに、選択した都市でドロップダウンを簡単に追加し、都市を再フィルタリングできます:)

于 2012-04-17T13:06:49.307 に答える
0

jsfiddleをチェックしてみてください:

 var options = {                    
      types: ['geocode']
 };

施設またはgeocodeのいずれかであり、それぞれビジネスまたは住所を表します。タイプが指定されていない場合は、両方のタイプが返されます。

于 2011-11-18T21:16:08.560 に答える