[英]Preventing the user from deleting in an input field
我想要一个文本字段(HTML 中的<input>
),用户只能使用它来编写文本,但是在删除文本时,它应该阻止他更新输入元素的 state。
<input type="text" />
除了检测用户在键盘上的按键操作(即使用onKeyUp
属性)并观察用户按键操作直到他按下 Backspace 字符之外,我想不出一个解决方案:
const input = document.querySelector('input') input.addEventListener('keydown', (e) => { const keyCode = e.keyCode if (keyCode === 8) console.log("Backspace pressed!") })
<input type="text" />
然而,这里有一个缺失的部分,即使用户无法通过 Backspace 键清除输入内容,他也可以使用Del
键。 所以我必须像处理 Backspace 键一样处理 Del 键。
现在,还有一个问题,就是试图通过覆盖内容来修改输入内容,如下所示:
然后,在那之后,我将不得不通过cutting
内容来防止用户编辑文本(我不知道该怎么做)。
那么,有哪些替代方案?
请随意使用 HTML、JavaScript、CSS,甚至 React。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.