如何使用谷歌地图搜索框api从搜索到的位置获取经度和纬度.
我使用与谷歌演示相同的代码 – https://developers.google.com/maps/documentation/javascript/examples/places-searchbox
搜索代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
<script type= "text/javascript" > //自动搜索 function initMap() { var input = document.getElementById( 'address_search' ); var places = new google.maps.places.Autocomplete(input); google.maps.event.addListener(places, 'place_changed' , function () { var place = places.getPlace(); var address = place.formatted_address; var latitude = place.geometry.location.A; var longitude = place.geometry.location.F; var mesg = "Address: " + address; mesg += "nLatitude: " + latitude; mesg += "nLongitude: " + longitude; console.log(place); GetLatlong(); }); } //根据google places搜索api获取经纬度 function GetLatlong() { var geocoder = new google.maps.Geocoder(); var address = document.getElementById( 'address_search' ).value; geocoder.geocode({ 'address' : address }, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { var latitude = results[0].geometry.location.lat(); var longitude = results[0].geometry.location.lng(); alert(latitude+ "," +longitude); } }) } </script> <script async defer src= "https://maps.googleapis.com/maps/api/js?key=xxxxx&libraries=places&callback=initMap" > </script> |