我想使用Jquery.Inputmask屏蔽电话号码输入,我想按照以下方式操作:
@Html.TextBoxFor(m => m.PhoneNumber, new {@class = "form-control mask-phone"})
在我的JS中我初始化它:
$(".mask-phone").inputmask({
mask: "(99)9{4,5}-9999}",
greedy: false
});
并且效果很好,但动态输入在第六位数字后面触发,我必须在连字符后手动放置插入符号。有没有办法只在键入最后一个数字后触发掩码中的动态?
我不确定自己是否清醒过。我是短期的,我想要一个来自的面具:
(99)9999-9999
为:
(99)99999-9999
答案 0 :(得分:1)
4年后:此情况的解决方案现在在输入掩码文档的“ keepStatic”选项下。因此,在这种情况下,您可以执行以下操作:
$(".mask-phone").inputmask({
mask: ["(99)9{4}-9999", "(99)9{5}-9999"],
keepStatic: true
});
答案 1 :(得分:0)
这是我最终使用的,它运作良好
$(".mask-telefone").on("keydown change", function() {
if ($(this).val().replace(/[_\-()]/g,"").length >= 10){
$(this).inputmask("(99)99999-9999");
else {
$(this).inputmask("(99)9999-9999");
}
});