繁体   English   中英

如何使用国际电话输入来格式化数字?

[英]How to format number using intl-tel-input?

我在index.html包括了intl-tel-input js&css库:

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/14.0.6/css/intlTelInput.css" />
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/14.0.6/js/intlTelInput.min.js"></script>

我还有一个名为app.js文件,当用户在textbox输入内容时,我会在其中格式化数字:

window.intlTelInputGlobals.loadUtils(_TEL_INPUT_UTILS).then(function(x, y){

var pn = $("#phone_number")[0];
var iti = intlTelInput(pn,{
    nationalMode: false,
    initialCountry: 'US'
})
var handleChangeVerification = function() {
if(iti.getNumber() ){
    iti.setNumber(iti.getNumber());
}};
pn.addEventListener('change', handleChangeVerification);
pn.addEventListener('keyup', handleChangeVerification);

变量_TEL_INPUT_UTILS引用intl-tel-input的实用程序脚本,在加载后,我尝试在text box数字格式。

该代码位于:

$(document).ready(function(){
   //...
})

现在,我在app.js中有一个代码位于loadUtils之外,我想用一个变量来格式化该数字。

当我调用相同的loadUtils ,出现以下错误:

jQuery.Deferred exception: window.intlTelInputGlobals.loadUtils(...) is null my_scpecific_funcation@webpack:///./src/app.js?:258:13

问题是如何在变量内部格式化数字? 每次都需要使用loadUtils吗? 在整个过程中是否有更好的方法?

我不知道的事情是,当您使用loadUtils ,它将被加载并且可以访问它。

所以我不用费力地使用下面的代码:

intlTelInputUtils.formatNumber(my_number_var, null, intlTelInputUtils.numberFormat.INTERNATIONAL);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM