Как получить значение обратного геокодирования в поле ввода? - PullRequest
0 голосов
/ 13 сентября 2018

Пример кода, предоставленный google для обратного геокодирования координат в полный адрес в порядке и тот же результат в порядке при использовании ответа на этот вопрос стека

Дело в том, что я не хочу, чтобы они были в инфобоксе согласно примерам, но я хотел бы обновить свое поле ввода, это код, который я сейчас использую, удалил обратный геокод, поскольку мне не удалось преобразовать это во входное значение:

<p id="addressHelper" ></p>
<div id="map"></div>

var myMarker = new google.maps.Marker({
 position: new google.maps.LatLng(47.651968, 9.478485),
 draggable: true
});

google.maps.event.addListener(myMarker, 'dragend', function (evt) {
 document.getElementById('addressHelper').innerHTML = '<p>Marker dropped: Current Lat: ' + evt.latLng.lat().toFixed(3) + ' Current Lng: ' + evt.latLng.lng().toFixed(3) + '</p>';
});

google.maps.event.addListener(myMarker, 'dragstart', function (evt) {
  document.getElementById('addressHelper').innerHTML = '<p>Currently dragging marker...</p>';
});

map.setCenter(myMarker.position);
myMarker.setMap(map);

1 Ответ

0 голосов
/ 13 сентября 2018

Немного поиграв и прочитав другие темы, вот мое решение:

<input type="text" id="location-text-box" name="address" placeholder="Your location..." required="">
<div id="map"></div>


    window.onload = function () {
      var myLatlng = new google.maps.LatLng(-25.363882, 131.044922);
      var mapOptions = {
        center: myLatlng,
        zoom: 1,
        mapTypeId: google.maps.MapTypeId.ROADMAP,
        disableDefaultUI: true,
        zoomControl: true
      };

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

      var marker = new google.maps.Marker({
        position: myLatlng,
        map: map,
        draggable:true,
        title:"Drag me!"
      });

      google.maps.event.addListener(marker, 'dragend', function (e) {
        var latlng = new google.maps.LatLng(e.latLng.lat(), e.latLng.lng());
        var geocoder = geocoder = new google.maps.Geocoder();
        geocoder.geocode({ 'latLng': latlng }, function (results, status) {
          if (status == google.maps.GeocoderStatus.OK) {
            if (results[1]) {
              $("#location-text-box").attr("value", results[1].formatted_address);
            }
          }
        });
      });
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...