【发布时间】:2018-12-02 06:32:36
【问题描述】:
请考虑Fiddle。
我想过滤用户可以输入数字的输入。当我按下字母键和shift+字母键(输入中没有添加任何内容)时,它可以工作。但是当 shift+1 (!) 和 shift+2(@) 和 ... 时它不起作用。
我的错误在哪里,我该如何解决这个问题?
【问题讨论】:
-
考虑将输入类型改为
number
标签: javascript jquery
请考虑Fiddle。
我想过滤用户可以输入数字的输入。当我按下字母键和shift+字母键(输入中没有添加任何内容)时,它可以工作。但是当 shift+1 (!) 和 shift+2(@) 和 ... 时它不起作用。
我的错误在哪里,我该如何解决这个问题?
【问题讨论】:
number
标签: javascript jquery
您可以通过检查 e.shiftKey 来阻止按下 shift 键时的输入。
我在您的 keyDown 侦听器方法中添加了以下子句:
if (e.shiftKey) {
alert("true");
}
并看到它在按下 shift 键时被调用。
还有this SO 话题,可能会有帮助。
【讨论】: