gpt4 book ai didi

reactjs - react 按键输入

转载 作者:行者123 更新时间:2023-12-03 13:38:20 24 4
gpt4 key购买 nike

I'm trying to prevent some characters from being entered, but for some reason the ban does not happen. Where was I wrong?

render () {
return <form>
<input
id="username"
type="text"
placeholder="Username"
value={this.state.value}
onKeyPress={this.pale_username.bind(this)}
/>
</form>
}

及功能

pale_username(key) {
if((key.charCode < 48 || key.charCode > 57) //numbers
&& (key.charCode < 65 || key.charCode > 90) // AB
&& (key.charCode < 97 || key.charCode > 122) // ab
&& (key.charCode !== 36) // $
&& (key.charCode !== 38) // &
&& (key.charCode < 40 || key.charCode > 41) // ()
&& (key.charCode < 45 || key.charCode > 46) // -.
&& (key.charCode !== 95) // _
&& (key.charCode !== 127) // del
&& (key.charCode !== 8) // BackSpace
&& (key.charCode !== 46))
return false;
}

最佳答案

我将在 onChange 处理程序中处理字符“ban”。原因之一是,如果有人将某些内容复制并粘贴到您的输入中,会发生什么情况?阻止键盘事件处理程序中的输入将不起作用。

我会尝试这样的事情:

handleChange(e) {
// Use whatever regex you need.
const filteredInput = e.target.value.replace(/[abAB$&()-_.*]|\d+/g, '');
this.setState(value: filteredInput)
}

然后在您的输入中使用它。

<input
id="username"
type="text"
placeholder="Username"
value={this.state.value}
onChange={this.handleChange.bind(this)}
/>

关于reactjs - react 按键输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48038933/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com