如何从 Google 版本地图中的拖动标记中获取格式化地址 [英] How to get the formatted address from a dragged marker in Google Version Maps
本文介绍了如何从 Google 版本地图中的拖动标记中获取格式化地址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我制作了一个 Google 地图,可以让您在文本字段中输入地址.然后它会导航到您在文本字段中输入的地址,并留下一个可拖动的标记,拖动时会显示纬度和经度以及地理定位地址.
我不想显示上面的地址,而是希望当您拖动标记时在底角显示标记的地址,而不是从文本字段中输入的地址.
我尝试了很多方法都无济于事.lonlat[0].formatted_address 是我尝试过的一些东西之一.
我从 谷歌
我的代码如下:
<头><meta name="viewport" content="initial-scale=1.0, user-scalable=no"/><meta http-equiv="content-type" content="text/html; charset=UTF-8"/><title>Google Maps JavaScript API v3 示例:简单地理编码</title><link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css"/><script src="http://maps.google.com/maps/api/js?v=3.5&sensor=false"></script><script type="text/javascript">var 地理编码器;无功地图;函数初始化(){地理编码器 = 新的 google.maps.Geocoder();var latlng = new google.maps.LatLng(-34.397, 150.644);var myOptions = {变焦:8,中心:latlng,mapTypeId: google.maps.MapTypeId.ROADMAP}map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);}函数代码地址(){var address = document.getElementById("address").value;geocoder.geocode({'地址':地址},函数(结果,状态){如果(状态 == google.maps.GeocoderStatus.OK){map.setCenter(results[0].geometry.location);var 标记 = 新的 google.maps.Marker({地图:地图,可拖动:真实,位置:结果[0].geometry.location});//Javascript//google.maps.event.addListener(marker, 'dragend', function(evt){document.getElementById('current').innerHTML = '<p>标记丢弃:当前纬度:' + evt.latLng.lat().toFixed(3) + '当前长度:' + evt.latLng.lng().toFixed(3) + '</p>';});google.maps.event.addListener(marker, 'dragstart', function(evt){document.getElementById('current').innerHTML = '<p>当前正在拖动标记...</p>';});google.maps.event.addListener(marker, 'dragend', function(evt){document.getElementById('info').innerHTML = '<p>地址:' + results[0].formatted_address + '</p>';});google.maps.event.addListener(marker, 'dragstart', function(evt){document.getElementById('info').innerHTML = '<p>当前正在拖动标记...</p>';});map.setCenter(marker.position);标记.setMap(地图);} 别的 {alert("地理编码失败,原因如下:" + status);}});}<style type="text/css">#控制{位置:绝对;底部:1em;左:100px;宽度:400px;z-index:20000;填充:0 0.5em 0.5em 0.5em;}HTML,正文,#map_canvas {边距:0;宽度:100%;高度:100%;}</风格>头部><body onLoad="初始化()"><div id="控件"><input id="address" type="textbox" value="悉尼,新南威尔士州"><input type="button" value="Geocode" onClick="codeAddress()"><div id="current" style="background-color:white;">什么都没有...</div><div id="info" style="background-color:white;">地址:</div>
<div id="map_canvas"></div>