我有一个文本输入字段,我在检查每次点击,所以用户应该只输入数字。我需要用javascript来做。
我在我的函数中创建了这个:
result = number.replace(/\D/g, '');return result;
我也试过result = number.replace(/[^0-9.\-]/g, '');return result;
这是有效的,因此它不允许输入除数字之外的任何内容,但是如果我按任意字母两次(gg或aa,...),则其中一个字母显示在输入字段中。
如果我输入不同的字母(ab,gh,...),那就没关系,它不允许任何字母。只有当我按两次相同的字母才会发生这种情况。
不知道为什么会发生这种情况,因为正则表达式应该只允许数字。
您需要使用小写d来匹配数字而不是大写D.还要匹配整数使用+符号后d喜欢\ d +。
这里是正则表达式备忘单:https://www.rexegg.com/regex-quickstart.html
你可以使用该链接来模拟你的正则表达式:https://regexr.com/