javascript - React onKeyPress 事件未检测到退格键
问题描述
如果按下退格键,我有一个handleBackspace
功能可以执行某些操作。
我试过这个:
const handleBackspace = (e) => {
if(e.keyCode === 8) {
console.log('1')
}
}
//
<input onKeyPress={handleBackspace}>
但这不起作用。(我用 keyCode 13
[enter] 试过了,它起作用了。但是 keyCode 8
[backspace] 不起作用)有人可以告诉我一个解决方案吗?
解决方案
可以在这里阅读,onKeyPress
只接收charCode
而不是keyCode
。
这为我们提供了这个问题的三个可能的答案:
- 要么将事件更改为
onKeyDown
- 更改侦听器以检查
e.charCode
- 使用
e.which
,这对onKeyPress
和都有效onKeyDown
。
推荐阅读
- android - Flutter:没有虚拟方法 getLongVersionCode(),Sdk 29
- javascript - 如何在 SSR React 应用程序中以编程方式获取我的 Google 优化实验 ID?
- javascript - 创建 ms 团队应用程序中的 javascript 实现问题
- javascript - 没有得到第三个条件
- spring - 为什么这个条件批处理流包含在spring批处理的无限循环中?
- c++ - C++中的基本类继承
- excel - 如果值包含未转义的逗号,是否有一种简单的方法来解析 Excel、Power Query 或 VBA 中逗号分隔的键:值对?
- plot - Gnuplot 数据符合日志函数
- python - 在 Pandas 中创建多索引标头
- angular - 适用于 Visual Studio Code 的 Microsoft Edge 开发人员工具不会自动将调试器附加到 Angular 项目