javascript - 为什么 event.target.value 不包含数字输入的 "."和 "e"?

标签 javascript html reactjs preact

我正在使用 Preact:

<input type="number" onKeyup={event => console.log(event.target.value)} />

如果我输入句点或“e”,它不会显示为 event.target.value 的一部分,直到我在其后输入另一个数字。

例如

如果输入值为 123,则记录 123

如果输入值为 123。,则记录 123

如果输入值为 123..,则记录 123

如果输入值为 123.4,则记录 123.4

为什么会有这样的表现?有没有办法获取实际输入(不删除 type="number")?

最佳答案

number 输入可以保存整数和 float 。

由于 123. 是一个整数,因此输入将返回整数 123

此外,123.4 是一个有效的 float ,因此输入的值为 123.4

无法从数字输入类型返回诸如 123.4 之类的字符串,因为它不适合用于此目的。

关于javascript - 为什么 event.target.value 不包含数字输入的 "."和 "e"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52003841/

相关文章:

java - 我可以使用 HTML5 和 Java 作为支持 bean 吗?

javascript - 当所有 div 具有相同的类时,如何检索单个文本值

javascript - react 路线与 URL 参数不更新 View

javascript - 尝试使用 React 检索 API 数据时出现问题

html - 为什么这个 span 标签不使用我指定的 CSS 类?

javascript - 在 next.js 中调试获取操作

javascript - 跳过 JavaScript 直接使用 Dart

javascript - 点击开始五彩纸屑

javascript - 使用 Angular 根据对象的年龄显示不同的时间戳

javascript - 平均 JS DB 竞争条件