javascript - 强制将特定模式放入文本框

标签 javascript html css regex

我有一个带有文本框的网页。目前,通过某些 javascript,文本框仅允许您键入数字或减号或破折号 - 。

我的问题是,我想要一种方法来进一步强制输入采用 3 个数字后跟“-”然后再跟 2 个数字的形式,仅此而已。所以每次输入时它看起来都像###-##。到目前为止,我已经尝试了很多方法,比如这段代码。

<input type="text" name="Item1" id = "Item1" value="" type="number" pattern="(0){3}-(0){2}" onkeypress="return isNumberKey(event)"/></input>

但是这个模式不起作用。关于我应该从哪里开始一些研究或示例代码的任何建议都会很棒。我希望它可以在 CSS 中实现,但 javascript 可以。

最佳答案

以下模式应该可以解决问题。

[0-9]{3}-?[0-9]{2}

如在

<input type="text" name="Item1" id = "Item1" value="" type="number" pattern="[0-9]{3}-?[0-9]{2}" onkeypress="return isNumberKey(event)"/></input>

关于javascript - 强制将特定模式放入文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51779487/

相关文章:

javascript - IE 在从控制台调用时支持 forEach(...) 但在从代码调用时不支持

html - 将导航栏中的 IMG 元素居中

javascript - 使用javascript调用bean方法

javascript - 在 JavaScript 中用单反斜杠替换双反斜杠

javascript - JS函数调用

php - 均衡列之间的内容

html - 当另一个标签悬停时,是否有纯 CSS 方法来更改选中的单选按钮标签样式?

javascript - 如何使用 jQuery 切换表格内容

javascript - 摆脱浏览器显示的 HTML 表单元素中的轮廓?

html - 用 Flex 填充父级的高度