Javascript 多重事件';要在输入元素(Reactjs)中侦听的
您好,我有一个类似以下内容的输入元素:Javascript 多重事件';要在输入元素(Reactjs)中侦听的,javascript,jquery,html,ajax,reactjs,Javascript,Jquery,Html,Ajax,Reactjs,您好,我有一个类似以下内容的输入元素: <input type="text" className="form-control" placeholder="Search for..." value={this.state.text} onChange={this.handleTextChange} /> <input type="text" className="form-control" placeholder="Search
<input
type="text"
className="form-control"
placeholder="Search for..."
value={this.state.text}
onChange={this.handleTextChange} />
<input
type="text"
className="form-control"
placeholder="Search for..."
value=this.state.text}
onChange={this.handleTextChange}
onKeyDown={this.handleEnter} />
但是它抓住了任何想法的作用,这是为什么?删除
e.preventDefault
handleEnter: function (e) {
if (e.keyCode == 13) {
var text = this.state.text.trim();
if(!text){
return;
}
this.props.onTextChange({ text: text });
}
},
handleTextChange: function (e) {
this.setState({ text : e.target.value });
},
删除
e.preventDefault
handleEnter: function (e) {
if (e.keyCode == 13) {
var text = this.state.text.trim();
if(!text){
return;
}
this.props.onTextChange({ text: text });
}
},
handleTextChange: function (e) {
this.setState({ text : e.target.value });
},
为什么e.preventDefault()使其停止工作?@Varenya
e.preventDefault()
删除默认浏览器行为,因此在本例中,对于onKeyDown
输入新文本。这就是为什么当您将preventDefault
添加到onKeyDown
时,您不能输入任何文本来输入。为什么e.preventDefault()使其停止工作?@Varenyae.preventDefault()
删除默认浏览器行为,因此在本例中,对于onKeyDown
来说,输入新文本是必要的。这就是为什么在将preventDefault
添加到onKeyDown
时不能输入任何文本的原因