如果Jquery屏蔽的输入插件中没有为phone字段提供扩展,则去掉x



Im使用jquery Masked输入插件。

我在一个字段上有以下掩码:

"?999-999-9999 x9999"

为什么?开始出现?因为如果用户输入了不完整的数字,我不希望这个字段被清除,所以我把整件事都变成了可选的。现在当用户输入号码时,无论手机是否有分机,都可以看到x。如果没有给出扩展,我如何摆脱x

再次,如果我使用,我不想清除字段

"999-999-9999? x9999" 

是的,它只在有扩展名时才添加x,但如果输入的电话不完整,它会清空不是目标的字段。

感谢您的帮助。

在尝试了很多之后,我自己修复了它以实现目标。

目标是在输入不完整的情况下保持文本不消失,在没有扩展的情况下去掉x。

我在代码末尾添加了这个测试:

var splitString = $("[name=myinput]").val().split("x");
//if splitString array length is more than 1 means splitString[1] is set
//if splitString[1].length is 0 means its only x by itself so get rid of it
if (splitString.length > 1 && splitString[1].length == 0) {
$("[name=myinput]").val($("[name=myinput]").val().replace("x", ""));
}

示例:

entered text: 718-111-123 x -> turns into -> 718-111-123
entered text: 718-111     x -> turns into -> 718-111
entered text: 718-111-123 x555 -> turns into -> 718-111-123 x555

最新更新