尝试将intl-tel-input的库用于国家/地区代码时出现错误

时间:2019-04-19 19:30:25

标签: javascript jquery model-view-controller intl-tel-input

我想在全球范围内验证手机号码,因此我进行了很多搜索,最后获得了国际电话输入库,可以轻松地执行此任务。

我从GitHub使用此工具,一切正常。

问题是我没有在项目中基于用户ip地址获取自动国家代码,但是当我单独使用它时,它可以工作。

我正在分享我所做的一切。

我正在研究

-MVC Asp

这是我真正想要的屏幕截图。

https://imgur.com/TWjdrVH

这是我得到的屏幕截图

https://imgur.com/Yr7MYBx

我遇到错误

Firefox

  

https://ipinfo.io/?callback=jQuery112405092049163202047_1555700688067&_=1555700688068”中的脚本已加载,即使其MIME类型(“ text / html”)不是有效的JavaScript MIME类型。[了解更多]注册   源“ https://ipinfo.io/?callback=jQuery112405092049163202047_1555700688067&_=1555700688068”的加载失败。注册:1:1

https://imgur.com/Q98ypO7

Chrome

  

获取https://ipinfo.io/?callback=jQuery112403105878441128118_1555701843619&_=1555701843620净值:: ERR_ABORTED 429

https://imgur.com/whH2rVr

这是我使用的一些代码

查看

@Html.EditorFor(model => model.user_mobile, new { htmlAttributes = new { @class = "form-control", id = "mobile" } })

脚本

<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>

<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="~/js/bootstrap.min.js"></script>

<!-- Multi select -->
<script src="~/js/multi_select.js"></script>

<!-- Select 2-->
<script src="~/js/select2/select2.full.min.js"></script>



<!-- Custom JS File -->
<script src="~/js/custom.js"></script>

<script src="~/Scripts/validation/phone/intlTelInput.js"></script>
<script type="text/javascript">

    var input = document.querySelector("#mobile");
    window.intlTelInput(input, {
        initialCountry: "auto",
        geoIpLookup: function (callback) {
            $.get('https://ipinfo.io', function () { }, "jsonp").always(function (resp) {
                var countryCode = (resp && resp.country) ? resp.country : "";
                callback(countryCode);
            });
        },
        //utilsScript: "build/js/utils.js" // just for formatting/placeholders etc
    });

    $(function () {
        $('.multiselect-ui').multiselect({
            includeSelectAllOption: true
        });
    });

    // Select 2 searchable
    $(function () {
        //Initialize Select2 Elements
        $('.select2').select2()
    });





</script>

帮我解决问题

我想根据用户的IP地址获取自动的国家/地区代码

1 个答案:

答案 0 :(得分:0)

您需要将URL替换为令牌: 就像:https://ipinfo.io-> https://ipinfo.io?token= $ Your_token

您需要在https://ipinfo.io/注册以获取令牌。