jquery屏蔽输入插件,以便在出错时不清除字段

McK*_*Kay 30 javascript jquery maskedinput

我在看http://digitalbush.com/projects/masked-input-plugin/

我这样称呼它:

$(control).mask('999-999-9999');
Run Code Online (Sandbox Code Playgroud)

如果出现问题,我不希望它丢弃用户输入,例如它们还没有完成

[407-555-____]
Run Code Online (Sandbox Code Playgroud)

如果你在键入这么多之后离开现场,它会清除它.我想留下它以便以后完成.

我是jQuery的新手,我已经查看了他的源代码,但我找不到任何方法可以做到这一点,我也找不到任何方法来编辑它来完成我想要的东西,因为代码对我而言是晦涩难懂的眼睛.

小智 52

将autoclear选项设置为false.

$(control).mask('999-999-9999', {autoclear: false});
Run Code Online (Sandbox Code Playgroud)

  • 这比接受的答案=)更好 (7认同)
  • 这看起来是一个很好的解决方案,听起来像是正确的解决方案,但唉,我不再在那个项目上工作了. (4认同)

McK*_*Kay 45

看起来我应该让整个面具可选:

mask('?999-999-9999')
Run Code Online (Sandbox Code Playgroud)

这样控件认为用户拥有的是"有效",我可以继续.即使它不是面具的可选部分.