无法从标记反转地理代码单击

Unable to Reverse Geocode From Marker Click

本文关键字:代码 单击      更新时间:2023-09-26

不知是否有人能帮我一下。

我正在尝试将此页面的反向地理代码功能放在一起,用户单击地图标记并执行反向地理代码,使用输出地址填充文本字段。

我从这个网站得到一些很好的建议后,我以为我已经解决了这个问题,但我似乎就是无法解决我的问题。

我可以用标记符和lng坐标填充文本字段,但我只是无法从反向地理编码中获得任何输出。

我已经通过代码与JS提琴和javascript没有问题,我一直在看一些在线教程,但我只是不知道我在哪里出错。

我只是想知道是否有人可以看看这个,请让我知道我哪里出错了。

多谢

我又看了一遍我的代码,发现它不太对。

反向地理代码脚本应该像这样:

(function reversegeocode() {

            var lat = document.getElementById('findosgb36lat').value;
            var lng = document.getElementById('findosgb36lon').value;
            var latlng = new google.maps.LatLng(lat, lng);
            getAddress(latlng);
            return false;
        }
    )
    function geocodePosition(pos) {
        geocoder.geocode({
            latLng: pos
        },
        function(responses) {
            if (responses && responses.length > 0) {
                updateMarkerAddress(responses[0].formatted_address);
            } else {
                updateMarkerAddress('Cannot determine address at this location.');
            }
        });
    }
    function updateMarkerAddress(str) {
        document.getElementById('address').value = str;
    }
    function getAddress(latlng) {
        if (!geocoder) {
            geocoder = new google.maps.Geocoder();
        }
        geocoder.geocode({
            'latLng': latlng
        }, function(results, status) {
            if (status == google.maps.GeocoderStatus.OK) {
// Looping through the result
for (var i = 0; i < results.length; i++) {
if (results[0].formatted_address) {
                document.getElementById('address').value = results[0].formatted_address;
            }
    }
    }
    }
    )
    }