任务看起来很简单。我必须从 Firefox 中的 keyup 上的“数字”类型的输入字段中删除非数字字符。
代码:
$("#field").on("keyup", function() {
regex = /[\\D]+/;
$(this).val( $(this).val().replace(regex, '') );
});
不幸的是,一旦非数字字符进入该字段,其整个内容就会被空字符串替换。
例如:
234d = 清空> 应为 234
解决方案(此处是因为问题已结束):
这个例子有效。我发现这与字段类型有关。如果“数字”类型字段中的输入包含非数字字符,则 Firefox 会显示该输入,但不会将其存储在输入对象中。一旦我使用文本输入,一切就正常了。似乎是 Firefox 的问题。
我认为这个问题不重复,因为它似乎考虑了“数字”类型输入字段的 Firefox 问题。
最佳答案
var val = '234d'.replace(/[^0-9]/g, '');
console.log(val);
关于javascript - 火狐浏览器 JavaScript : Remove non-numeric characters from input of type "number" - FF issue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38762432/