Geoip Span城市第二次没有工作

时间:2018-04-30 21:49:34

标签: geoip maxmind city

自从上周以来,这对我来说很严重。我正在制作一个网页,并且必须多次使用。但唯一的事情是,当我第二次使用该代码时,它不会显示CITY名称输出。

这是我正在使用的代码。我做错了什么?

在此代码中,当您运行它时,您会注意到它只显示您的城市1次,第二个代码由于某种原因不会运行。我希望我清楚我要问的是什么。随意问任何问题。

这是脚本部分:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script src="https://js.maxmind.com/js/apis/geoip2/v2.1/geoip2.js" type="text/javascript"></script>

<script>
    var onSuccess = function(geoipResponse) {
        var cityElement = document.getElementById('city');
        if (cityElement) {
            cityElement.textContent = geoipResponse.city.names.en || 'Unknown city';
        }

        var countryElement = document.getElementById('country');
        if (countryElement) {
            countryElement.textContent = geoipResponse.country.names.en || 'Unknown country';
        }
    };

    var onError = function(error) {
        window.console.log("something went wrong: " + error.error)
    };

    var onLoad = function() {
        geoip2.city(onSuccess, onError);
    };

    // Run the lookup when the document is loaded and parsed. You could
    // also use something like $(document).ready(onLoad) if you use jQuery.
    document.addEventListener('DOMContentLoaded', onLoad);
    </script>

这是身体的一部分:

<span id="country"></span> <span id="city"></span><span id="city"></span>

1 个答案:

答案 0 :(得分:1)

感谢您的帮助,正如您所建议的,复制

var cityElement = document.getElementById('city');

并在第二个代码上重命名为city2。这是一个简单的解决方法,但对我有用。

谢谢:)