Javascript React,如何在表单字段中键入特定字符
我有一个输入字段组件。如果在输入字段中键入字符,我需要显示一个警报。有没有办法,我们可以确定输入的字符Javascript React,如何在表单字段中键入特定字符,javascript,reactjs,react-jsx,jsx,Javascript,Reactjs,React Jsx,Jsx,我有一个输入字段组件。如果在输入字段中键入字符,我需要显示一个警报。有没有办法,我们可以确定输入的字符 export default class MyComponent extends Component { constructor(props) { super(props); this.state = {}; } handleKeyPress(e) { // show an alert if "#" character
export default class MyComponent extends Component {
constructor(props) {
super(props);
this.state = {};
}
handleKeyPress(e) {
// show an alert if "#" character is pressed
}
render() {
return (
<input onChange={this.handleKeyPress}>
)
}
}
编辑
我想在用户键入字符后立即显示警报。之后,他可以在没有提示的情况下继续键入任何字符。如果用户在输入字段中键入另一个,则应再次显示警报
任何想法都值得赞赏
export default class DayView extends Component {
constructor(props) {
super(props);
this.state = {
value: ''
};
// Bind `this`
this.handleKeyPress = this.handleKeyPress.bind(this);
}
handleKeyPress(e) {
// Get input value
var value = e.target.value;
// User has already typed a #
var hasSymbol = !!value.substring(0, value.length - 1).match(/\#/);
// Check if last character is a #
if (value[value.length - 2] === '#') {
alert('There is a # symbol');
}
// Check if this last character is a #
// and the value already has one
if (hasSymbol && value[value.length - 1] === '#') {
alert('There is an other # symbol');
}
// Set state
this.setState({ value });
}
render() {
return (
<input onChange={this.handleKeyPress} value={this.state.value}>
)
}
}
使用event.target.value获取值并获取最新字符。使用e.target.value[e.target.value.length-1]并检查是否有
希望这有帮助
类DayView扩展了React.Component{
构造器{
超级作物;
this.state={};
}
手电筒{
如果e.target.value[e.target.value.length-1]==
setTimeout=>警报'Got',200
//如果按下字符,则显示警报
}
渲染{
回来
}
}
ReactDOM.render,document.getElementById'app'
使用event.target.value获取值并获取最新字符。使用e.target.value[e.target.value.length-1]并检查是否有
希望这有帮助
类DayView扩展了React.Component{
构造器{
超级作物;
this.state={};
}
手电筒{
如果e.target.value[e.target.value.length-1]==
setTimeout=>警报'Got',200
//如果按下字符,则显示警报
}
渲染{
回来
}
}
ReactDOM.render,document.getElementById'app'
keyUp比keyPress&change更适合这种情况
希望这有帮助
类DayView扩展了React.Component{
构造器{
超级作物;
this.state={};
this.handleKeyUp=this.handleKeyUp.bindthis;
}
handleKeyUpe{
this.refs.atom.value.endsWith&&setTimeout=>alert'Got',200//在按下字符时显示警报
}
渲染{
回来
}
}
ReactDOM.render,document.getElementById'app'
keyUp比keyPress&change更适合这种情况
希望这有帮助
类DayView扩展了React.Component{
构造器{
超级作物;
this.state={};
this.handleKeyUp=this.handleKeyUp.bindthis;
}
handleKeyUpe{
this.refs.atom.value.endsWith&&setTimeout=>alert'Got',200//在按下字符时显示警报
}
渲染{
回来
}
}
ReactDOM.render,document.getElementById'app'
谢谢你的快速回复。这真的很有帮助。我想在用户键入字符后立即显示警报。之后,他可以在没有提示的情况下继续键入任何字符。如果用户在输入字段中键入另一个,则应再次显示警报。感谢您的快速回复。这真的很有帮助。我想在用户键入字符后立即显示警报。之后,他可以在没有提示的情况下继续键入任何字符。如果用户在输入字段中键入另一个,则应再次显示警报。感谢您的评论。你的回答真的很有帮助。我对这个问题作了进一步的说明。你的回答是appreciated@ErangaKapukotuwa更新了答案。您可以根据需要调整延迟时间。谢谢@PraneshI不知道,已经做出的批准正在通过添加另一个批准来删除。第二个答案也有一半正确。这就是为什么我在其中加入了我的认可。不管怎样,我已经改正了。谢谢你的评论。你的回答真的很有帮助。我对这个问题作了进一步的说明。你的回答是appreciated@ErangaKapukotuwa更新了答案。您可以根据需要调整延迟时间。谢谢@PraneshI不知道,已经做出的批准正在通过添加另一个批准来删除。第二个答案也有一半正确。这就是为什么我在其中加入了我的认可。不管怎样,我纠正了它。