0

我正在使用嵌入在我的网页上的谷歌地图。我想要的是创建一个按钮单击事件,因此在用户将地址输入到名为 txtBoxMaps 的文本框中后,他们可以单击一个按钮,该按钮将显示新位置。我尝试使用: google.maps.event.addDomListener(window, 'click', Initialize); 但它似乎没有做任何事情。

下面是我的代码:

<script type="text/javascript">

function Initialize() {

var mapOptions = {
            center: new google.maps.LatLng(-33.01, 27.9),
            zoom: 13,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };

        var map = new google.maps.Map(document.getElementById('GMap1'), mapOptions);

        var input = document.getElementById('txtBoxMaps');

        });

    }

    google.maps.event.addDomListener(window, 'load', Initialize);



</script>



<input type="text" id="txtBoxMaps"/>

        <div id="GMap1" style="height: 240px; width:570px" ></div>
4

1 回答 1

0

您需要将侦听器放在按钮上,然后使用您的代码在此时获取字段中的值,就像这样: var input = document.getElementById('txtBoxMaps').value;

此时,您可以对该地址进行地理编码,并将地图中心设置为新位置。

function getGeocode() {
  var input = document.getElementById("txtBoxMaps").value;
  geocoder.geocode( { 'address': input}, function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
      map.setCenter(results[0].geometry.location);
    }
  });

在此处查看有关地理编码的文档:https ://developers.google.com/maps/documentation/javascript/geocoding

于 2013-08-28T18:17:02.493 回答