gpt4 book ai didi

javascript - 按下 Enter 键后调用 onChange 事件

转载 作者:IT老高 更新时间:2023-10-28 13:17:05 26 4
gpt4 key购买 nike

我是 Bootstrap 的新手,遇到了这个问题。我有一个输入字段,只要我输入一个数字,就会调用 onChange 中的函数,但我希望在输入整数后按下“Enter”时调用它。验证函数也存在同样的问题 - 它调用得太快了。

var inputProcent = React.CreateElement(bootstrap.Input, {type: "text",
//bsStyle: this.validationInputFactor(),
placeholder: this.initialFactor,
className: "input-block-level",
onChange: this.handleInput,
block: true,
addonBefore: '%',
ref:'input',
hasFeedback: true
});

最佳答案

根据React Doc ,你可以监听键盘事件,例如 onKeyPressonKeyUp,而不是 onChange

var Input = React.createClass({
render: function () {
return <input type="text" onKeyDown={this._handleKeyDown} />;
},
_handleKeyDown: function(e) {
if (e.key === 'Enter') {
console.log('do validate');
}
}
});

更新:使用 React.Component

这是使用 React.Component 做同样事情的代码

class Input extends React.Component {
_handleKeyDown = (e) => {
if (e.key === 'Enter') {
console.log('do validate');
}
}

render() {
return <input type="text" onKeyDown={this._handleKeyDown} />
}
}

这里是 jsfiddle .

更新 2:使用功能组件

const Input = () => {
const handleKeyDown = (event) => {
if (event.key === 'Enter') {
console.log('do validate')
}
}

return <input type="text" onKeyDown={handleKeyDown} />
}

关于javascript - 按下 Enter 键后调用 onChange 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31272207/

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