如何解决输入掩码问题
国家变量:
<?PHP
$countryList = array("Australia","Canada","France","Italy","Spain","U.K.","U.S.A.","Other")
?>
这些是我的输入:
<select class="form-control" id="country" name="country" onchange="show(this)">
<?PHP foreach($countryList as $aCountry){ ?>
<option value="<?=$aCountry?>"><?=$aCountry?></option>
<?PHP } ?>
</select>
<input class="form-control form-control-lg text-center" type="text" id="phone" name="phone" placeholder="Phone#" value="" required>
我包括这些库:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/5.0.5/jquery.inputmask.min.js"></script>
当我这样使用它时,它工作正常:
$('#phone').inputmask("(999) 999 9999");
当我这样做时,它也能正常工作:
var num = "(999) 999-9999"
mask(num);
function mask(n){
$('#phone').inputmask(n);
}
但无论出于何种原因,这都行不通:
$('#country').change(function(){
$("#country").each(function () {
var className = $(this).val();
if(className == "U.S.A."){
var number = "(999) 999 9999";
mask(number);
}
});
function mask(n){
$('#phone').inputmask(n);
}
如果我在那里添加警报功能,当我更改下拉列表时它可以正常工作。为什么不戴口罩?
**更新
$('#country').change(function(){ var className = $(this).val() {
var className = $(this).val();
if (className == "U.S.A.") {
var number = "9 999 9999";
mask(number);
}
});
});
function mask(n) {
$('#phone').inputmask(n);
}
但是,它仍然无法正常工作。
解决方法
所以,我想通了。我调用了两次查询库。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。