Akh*_*lli 10 reactjs material-ui
我使用了TextField反应材料-ui.我想知道用户是否按下了Ctrl + Enter.我尝试过使用onKeyPress事件但没有结果.我怎样才能做到这一点?
<TextField
value={this.state.message}
autoFocus={true}
hintText='Type your message here'
onChange={this.onChangeMessage}
onKeyPress={(event) => {
if (event.ctrlKey && event.keyCode == '13')
this.sendMessage();
}}
multiLine={true}
/>
Run Code Online (Sandbox Code Playgroud)
Vis*_*ati 11
onKeyPress是提到,支持做出反应合成关键事件在这里.试试这段代码:
onKeyPress= (e) => {
if (e.key === 'Enter') {
console.log('Enter key pressed');
// write your functionality here
}
}
Run Code Online (Sandbox Code Playgroud)
小智 8
也许你应该试试 onKeyUp 而不是 onKeyPress
<TextField
value={this.state.message}
autoFocus={true}
hintText='Type your message here'
onChange={this.onChangeMessage}
onKeyUp={(event) => {
if (event.ctrlKey && event.key== 'Enter')
this.sendMessage();
}}
multiLine={true}
/>
Run Code Online (Sandbox Code Playgroud)
你最好onKeyDown用于这个目的。原因如下(链接):
所以,代码将是:
onKeyDown={(e) => {
if (e.key === "Enter") {
desiredFunction();
}
}}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10632 次 |
| 最近记录: |