Создание события нажатия кнопки (Google Maps)

Я работаю с Google Maps, встроенными в мою веб-страницу. Я хочу создать событие нажатия кнопки, чтобы после того, как пользователь ввел адрес в текстовое поле с именем txtBoxMaps, он мог нажать кнопку, которая отобразит новое местоположение. Я пытался использовать: google.maps.event.addDomListener (окно, "щелчок", инициализация); но, похоже, ничего не делает.

Вот мой код ниже:

<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>

1 ответ

Решение

Вам нужно будет поместить слушателя на кнопку, а затем получить значение в поле в тот момент, например, используя ваш код: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

Другие вопросы по тегам