javascript 按下回车键时未检测到材料UI输入

piv4azn7  于 2023-03-21  发布在  Java
关注(0)|答案(3)|浏览(130)

我正在为我的React项目使用Material UI,无法检测到何时按下回车键。我已经尝试了以下我认为应该工作的方法,但仍然无法检测到事件,不确定我错过了什么。
我有一个自定义的MUI组件

const [search, setSearch] = useState('');

const handleChange = (event) => {
 setSearch(event.target.value);
  if (event.keyCode == 13) {
    console.log('enter key was pressed');
   }
 }

<SearchBox
  value={search}
  onChange={handleChange}
  placeholder="enter your search here"
  }}
/>
8oomwypt

8oomwypt1#

根据物料界面单据,只有字段值发生变化时才会调用onChange事件回调
根据用例尝试使用onKeyPressonKeyUponKeyDown事件

onKeyPress={(event) => {
   if (event.keyCode === '13'){
      console.log('enter key was pressed');      
}}
9jyewag0

9jyewag02#

keyCodecharCode已弃用。

而是使用key方法来检测Enter密钥。

onKeyPress={(event) => {
  if (event.key === 'Enter')
    console.log('Enter Pressed')
}}
qvsjd97n

qvsjd97n3#

onkeypress事件也不建议使用。
我选择使用onKeyDown而不是,如下所示:

onKeyDown={(event) => {
   if (event.key === 'Enter')
       console.log('Enter Pressed')
}

参考:https://www.w3schools.com/jsref/event_onkeypress.asp

相关问题