为什么type =“ number”接受'e'字符?

时间:2018-08-28 02:21:22

标签: html html5 input

这里有人可以解释为什么输入type=number接受e字符吗?这真的让我感到困惑,我对此很疑惑。

enter image description here

2 个答案:

答案 0 :(得分:4)

除了字母e外,还有一个数字 e(代表 exponents )。< / p>

如果您确实要排除这些字符,则可以通过定位字符代码69来阻止它们,并使用 preventDefault() keypress事件的默认行为>如果输入了字符:

document.querySelector("input").addEventListener("keydown", function(event) {
  if (event.which === 69) {
    event.preventDefault();
  }
});
<input type="number">

编辑,将事件和条件修改为event.preventDefault()

答案 1 :(得分:2)

e是指数。这允许用户输入一个数字,例如4e3,表示4×10 3

尝试在框中输入4e3,然后按上一步按钮:在Chrome中,它将更改为显示4001