gpt4 book ai didi

javascript - 如何防止输入中出现波浪号

转载 作者:行者123 更新时间:2023-11-30 09:24:28 25 4
gpt4 key购买 nike

我想阻止在我的输入中键入波浪号 ~ 的可能性。
这是我的代码片段:

$('#myInput').on("keydown", function(e) {
if (e.shiftKey && e.keyCode === 192) {
e.preventDefault();
console.log(e.keyCode);
}
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input id="myInput" />

我尝试了与上面相同的 keydownkeypressedkeyup,但它没有按预期工作。
有人有简单的解决方案吗?

最佳答案

有些人说您的代码有效,有些人说无效。

因为“~”没有绑定(bind)在每个键盘布局的相同键上。
为了能够阻止大家写(或粘贴)“~”的可能性,我会做这样的事情:

$('#myInput').on("keyup", function(e) {
this.value = this.value.replace(/~/g, '');
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="myInput" />

每次我们尝试插入一个字符时,我们都可以看到“~”字符被删除,但我认为这不是问题。相反,我认为这将帮助用户理解他不能使用该字符,而不用怀疑他们键盘的良好功能。
可以使用 input 而不是 keyup 来避免这种行为,但出于上述原因,我个人更喜欢这种方式。

⋅ ⋅ ⋅

这可以通过修改正则表达式来添加一些其他禁止使用的字符:

$('#myInput').on("keyup", function(e) {
this.value = this.value.replace(/[~^!]/g, '');
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="myInput" />
<p>Forbidden: ~ ^ !</p>

希望对你有帮助。

关于javascript - 如何防止输入中出现波浪号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49731857/

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