简体   繁体   English

防止用户在输入字段中删除

Preventing the user from deleting in an input field

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文简体   中文繁体   英文版本 版本,有任何建议请联系yoyou2525@163.com。

I want to have a text field ( <input> in HTML) that the user can only use to write text, but when deleting the text, it should prevent him from updating the state of the input element.我想要一个文本字段(HTML 中的<input> ),用户只能使用它来编写文本,但是在删除文本时,它应该阻止他更新输入元素的 state。

 <input type="text" />

I couldn't come up with a solution except to detect the user key presses on the keyboard, ie, using the onKeyUp attribute, and watch the user keystrokes until he presses the Backspace character:除了检测用户在键盘上的按键操作(即使用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" />

However, there's a missing part here, even though the user won't be able to clear the input content by the Backspace key, he can instead use the Del key.然而,这里有一个缺失的部分,即使用户无法通过 Backspace 键清除输入内容,他也可以使用Del键。 So I would have then to handle the Del key the same way I handle the Backspace key.所以我必须像处理 Backspace 键一样处理 Del 键。

Now, there's another problem, which is trying to modify the input content by overwriting the content as follows:现在,还有一个问题,就是试图通过覆盖内容来修改输入内容,如下所示:

在此处输入图像描述

and then, after that, I will have to prevent the user from editing the text by cutting the content (which I have no idea how to do).然后,在那之后,我将不得不通过cutting内容来防止用户编辑文本(我不知道该怎么做)。

So, what are the alternatives?那么,有哪些替代方案?

Please feel free to use HTML, JavaScript, CSS, or even React.请随意使用 HTML、JavaScript、CSS,甚至 React。

问题暂未有回复.您可以查看右边的相关问题.
2 如何防止用户在输入字段中不输入字母? - how to prevent user not to enter alphabets in input fied?

我有一个手机输入字段,用户可以在其中输入他/她的号码,但目前用户可以在输入字段中输入字母。我希望用户只输入 10 位数字而不是字母。 这是我的代码 TS文件 我不想使用 type="number" 或 "text"。我只想使用 "password",因为我不想向任何人显示我的号码,看到代码htt ...

3 防止用户离开输入字段 - Preventing user from leaving input field

我正在尝试在前端(IE11)上进行输入字段验证。 输入验证失败时,用户不应离开输入字段。 他也不能激活页面上的其他控件。 我尝试通过使用重新获得焦点 并通过使用来阻止任何点击 但是页面上仍有激活的控件(如“选项卡”和“选择框”)。 关于如何将用户限制为特定输入 ...

7 如何防止从用户输入中删除特殊字符(如“ /”)? - How to prevent removal of special characters like '/' from user input?

一个总的新手问题。 我正在开发一个Joomla模板,在这个模板中,我想提供从远程位置或本地加载资产(图像,JavaScript和CSS)的条件。 我使用以下代码相同: 现在,我要通过用户输入来调用$cdn_path的值。 我可以获取路径,但是它正在删除'/'标记。 请参见 ...

10 在用户输入字段中删除多余的空格 - Remove excessive whitespace in user input field

在用于处理(可能是敌对的)用户输入字段的控制器方法中,我具有以下代码: 我的目标是保留换行符以供典型的非恶意使用,并以安全的html编码字符串显示用户输入。 我接受用户输入,将其解析为换行符,并在换行符处放置定界符。 我执行HTML编码,然后重新插入中断。 (我可能会将其更改为将段 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM