if 语句仅在第二个键按下时运行



试图弄清楚为什么这里的if语句只在用户第二次按下键时运行。我正在尝试让它从第一个键开始运行。

功能:

const commentFieldHasText = () => {
const commentInput = document.querySelector('.add-comment')
console.log('runs first keypress')
if (commentInput.value) {
console.log('only runs second keypress')
}
}

输入:

<input 
className="add-comment"
placeholder="Add a public comment" 
onKeyDown={() => commentFieldHasText()}
/>

附加信息:onKeyPress也没有提供预期的功能。 不过,onKeyUp确实如此。

发生这种情况是因为keydownkeypress事件发生在键入实际键之前

若要解决此问题,请尝试使用inputkeyup事件。

相关内容

  • 没有找到相关文章

最新更新