Javascript 如何在输入控件中仅允许整数
是否有一种简单的方法允许用户只输入正整数和负整数。我可以用几行JavaScript或jQuery来完成,但希望有一种像regex这样的简单方法。但是我找不到我需要的东西。 我需要能够输入以下字符: -0123456789Javascript 如何在输入控件中仅允许整数,javascript,html,regex,angular,Javascript,Html,Regex,Angular,是否有一种简单的方法允许用户只输入正整数和负整数。我可以用几行JavaScript或jQuery来完成,但希望有一种像regex这样的简单方法。但是我找不到我需要的东西。 我需要能够输入以下字符: -0123456789 <input id="myID" type="number"> 我不需要dot/coma/exp字符。只有-0123456789,即正整数和负整数有一个模式属性,您可以为输入指定自己的正则表达式。欲了解更多信息。如果您不想编写任何javascript,则可以使
<input id="myID" type="number">
我不需要dot/coma/exp字符。只有-0123456789,即正整数和负整数有一个
模式
属性,您可以为输入指定自己的正则表达式。欲了解更多信息。如果您不想编写任何javascript,则可以使用模式属性和
[0-9-]|[^e]
和必需的元素中的属性
实际上,当您使用type=“number”
时,它不会做您想要的事情,我有一个解决方案供您使用type=“text”
这不是type=“number”
所做的吗?我不明白这个问题,你在问这个问题之前没有做过任何研究吗?正如我所说的,我不想使用jQuery。。上面的HTML代码允许输入我不想要的点和“e”to@JohnGlabb如果您将我发布的链接上的正则表达式修改为/[\,]/g
@JohnGlabb“它不工作..它允许输入字母”。在哪个浏览器上?可以输入JavaScript工件E-notationE
,但不提交dfirefox根本不起作用。。在Chrome中允许输入点和“e”@johnglab“在Chrome中允许在Chrome 61中输入点和“e”,可以输入电子符号e
,但当e
或
在该值范围内时,将不会提交
。您在哪个版本的Chrome上尝试了stacksnippets?“FireFox根本不起作用……”刚刚在Firefox57上试用过,结果是一样的;也就是说,如果e
或
在
的值
范围内,则不提交
,因为与模式
处的RegExp
属性匹配时,该值将无效。不确定你所说的“根本不起作用”是什么意思?@johnglab在你尝试代码的浏览器中,当e
和
中的一个或两个都包含在
的值时,
会提交吗?我根本不想允许使用点和“e”。FF-56.0.1,铬-61.0.3163.100。看起来阳光明媚有个解决办法。。下面这个例子很好,但我认为使用纯正则表达式有更好的方法。我将把它标为答案