0

我使用jquery Masked输入插件。

我在字段上有以下掩码:

 "?999-999-9999 x9999"

为什么?在开始?因为如果用户输入了不完整的数字,我不想清除该字段,所以我将整个事情设为可选。现在,当用户输入数字时,始终可以看到x电话是否有分机。x如果没有延期,我该如何摆脱它?

同样,我不想清除该字段,如果我使用

  "999-999-9999? x9999" 

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

非常感谢任何帮助。

4

1 回答 1

0

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

目标是在输入不完整的情况下保持文本不消失,如果没有给出扩展名,则摆脱 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
于 2012-12-03T16:20:57.987 回答