在chrome中,当我们使用<input type='number'
时>,如果我们输入任何非数字字符,它们不会显示。
在 mozilla 中,它们会被显示。然而,当我得到 e.target.value
,我收到一个带有验证消息的空字符串 Please enter an number
.
我想要 Mozilla 中的 chrome 功能 - 如果最后一个字符不是数字,我会尝试删除它 - 但由于输入非数字字符后该值为空字符串,因此我无法这样做。
最佳答案
你可以这样做: http://jsfiddle.net/zpg8k/1660/
$('input[type="number"]').keypress(function(e) {
var a = [];
var k = e.which;
for (i = 48; i < 58; i++)
a.push(i);
if (!(a.indexOf(k)>=0))
e.preventDefault();
});
关于html - 防止在 mozilla 中显示输入类型数字的非数字字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32143018/