html - 防止在 mozilla 中显示输入类型数字的非数字字符

标签 html firefox

在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/

相关文章:

html - 将元素包裹在一个固定居中的元素周围

javascript - 显示 0-100 范围输入,最小值为 30,但仍显示输入上的 0-30 区域

javascript - 为什么单击按钮时我的黑色覆盖层没有出现?

html - 按钮 :hover not working in Firefox

javascript - 火狐SDK : redefine content-script function

css - 告诉你使用的 css 样式的 Firefox 插件

html - 元素出现在一行而不是单独的行

javascript - 如何让 JavaScript 设置这些元素值?

javascript - WebRTC:Firefox 未检测到任何输出设备

javascript - Mozilla firefox 无法使用 window.onbeforeunload