【发布时间】:2015-02-18 16:01:24
【问题描述】:
我有一个需要格式化的 HTML 表单中的电话字段
(555) 555-5555
这是字段:
<input type="tel" id="phone" name="phone" placeholder="(555) 555-5555" autocomplete="off" maxlength="14" required="required">
几个要求:
- 它应该会在您键入时自动格式化。
- 粘贴后应该会自动格式化。
- 它应该只允许输入数字、(、)、- 和空格。
- 如果用户键入作为掩码一部分的非数字字符之一,只要这些字符位于正确的位置,它就应该允许这些字符出现在字段中。不要剥去它们。例如,如果他们在字段中键入的第一个字符是一个左括号,它应该允许它。如果它是一个数字,它应该将其更新为一个开括号,后跟该数字。如果是其他字符,则应将其删除。
如何使用 jQuery/Javascript 将这种即用型掩码应用于这些要求?
【问题讨论】:
-
有很多输入屏蔽插件,例如:igorescobar.github.io/jQuery-Mask-Plugin
-
感谢@RoryMcCrossan。你是对的。我审查了几个掩蔽插件。但是,即使我能找到满足我所有要求的一个,它也会增加不必要的开销,除非我进入并删除我不需要的功能。所以,我选择为手机面具写一些东西。
标签: javascript jquery regex phone-number