【问题标题】:How to get street level address by autocomplete google api如何通过自动完成谷歌api获取街道地址
【发布时间】:2018-02-17 10:14:48
【问题描述】:

我想获取街道地址,但什么也得不到。

提前致谢。

  <script>   
    google.maps.event.addDomListener(window, 'load', function () {
        var options = {
            types: ['(address)'],
            componentRestrictions: ['pk']
        };

        var input1 = document.getElementById('txtUserStartLocation');
        var places = new google.maps.places.Autocomplete(input1, options);

        var input2 = document.getElementById('txtUserDistination');
        places = new google.maps.places.Autocomplete(input2, options)

    });
</script>

【问题讨论】:

    标签: google-maps google-places-api googleplacesautocomplete


    【解决方案1】:

    错误是您使用的是(address)类型值,根据文档,它必须是address

    https://developers.google.com/places/supported_types#table3

    看看这个例子:

    var autocomplete;
    
    function initAutocomplete() {
      autocomplete = new google.maps.places.Autocomplete(
          document.getElementById('autocomplete'),
          {
              types: ['address'],
              componentRestrictions: {
                  country: ['pk']
              }
          });
    }
    #map {
      height: 100%;
    }
    /* Optional: Makes the sample page fill the window. */
    html, body {
      height: 100%;
      margin: 0;
      padding: 0;
    }
    #autocomplete {
       width: 400px;
    }
    <div id="locationField">
        <input id="autocomplete" placeholder="Enter your address" type="text"></input>
    </div>
    <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDztlrk_3CnzGHo7CFvLFqE_2bUKEq1JEU&libraries=places&callback=initAutocomplete" async defer></script>

    我希望这会有所帮助!

    【讨论】:

    • 谢谢哥们的工作,我怎么能使用其他限制,比如房子没有等。
    • 唯一可用的限制是国家。有一个扩展限制的功能请求:issuetracker.google.com/issues/35822067
    猜你喜欢
    • 2012-11-22
    • 1970-01-01
    • 2012-04-27
    • 1970-01-01
    • 2017-02-27
    • 2017-10-20
    • 1970-01-01
    • 2020-06-20
    • 1970-01-01
    相关资源
    最近更新 更多