2 回答
TA贡献1775条经验 获得超8个赞
使用translation选项
$('.phone').mask('+32Z00 00 00 00', {
placeholder: "Phone number",
translation: {
'Z': { pattern: /[1-9]/ }
},
onInvalid: function(val, e, f, invalid, options) {
if(val === '+32') {
event.target.value = '';
}
}
});
<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.mask/1.14.16/jquery.mask.min.js" integrity="sha256-Kg2zTcFO9LXOc7IwcBx1YeUBJmekycsnTsq2RuFHSZU=" crossorigin="anonymous"></script>
<input class="phone" />
TA贡献1876条经验 获得超5个赞
我的第一个方法就是这个。退出空格,然后退出前导零(如果存在)。
function truncateLeadingZero(phoneNumber) {
var noWhiteSpaces = phoneNumber.split(' ').join('');
while (noWhiteSpaces.length > 9 && noWhiteSpaces[0] === '0') {
noWhiteSpaces = noWhiteSpaces.substring(1,noWhiteSpaces.length);
}
return noWhiteSpaces;
}
var phoneNumber = '0123 45 67 89';
phoneNumber = truncateLeadingZero(phoneNumber)
console.log(phoneNumber);
我认为使用您在问题中发布的内容,如果您使用我的输出,电话号码将根据需要被屏蔽。它期望的是一个包含 9 个数字的字符串(掩码的每个零)。
$('.phone').mask('+32000 00 00 00', {placeholder: "Phone number"});
添加回答
举报