我只是将其添加为评论,我发现了这个解决方案,但我的代表永远都是43,我不能这样,这是一个新问题。
我在我的文本输入表单字段中使用它,我只想要数字,我发现这是一个问题的解决方案:
onkeypress="if ( isNaN( String.fromCharCode(event.keyCode) )) return false;"
这适用于Chrome,但在Firefox中会引发以下错误:
12:30:53.951 Use of getPreventDefault() is deprecated. Use defaultPrevented instead.
我真的想将输入限制为只有数字..关于如何摆脱这个错误的任何想法?
在有人说" Duh之前,在文档中搜索getPreventDefault()"它不存在,我不会在任何地方使用它或在任何地方调用它。
答案 0 :(得分:0)
最有可能发生这种情况,因为您使用内联事件处理和非标准代码来取消事件,这不是连接事件的标准方法。而是在代码中执行:
yourInputField.addEventListener("keypress", function(evt){
if(isNaN(String.fromCharCode(evt.keyCode))){
evt.preventDefault();
evt.stopPropagation();
}
});
答案 1 :(得分:0)
我重写了原始搜索并发现了这一点。当我来到这个网站寻找内联解决方案时,这正是我所寻找的。 p>
<input id="intNumber" type="number" min="1" max="20" />
LOL