gpt4 book ai didi

javascript - Javascript中的正则表达式来解析onKeyDown的输入

转载 作者:行者123 更新时间:2023-11-30 08:55:17 26 4
gpt4 key购买 nike

我正在使用 onKeyDown 和正则表达式来解析键盘输入。我需要它到所有 A-Z、退格键和问号。问题来自 ?,我无法接受它。我努力了 /[A-Z\x08?]/
/[A-Z\x08\?]/
/[A-Z\x08\\?]/
/[A-Z\x08\x3F]/

没有一个允许 ?被接受。

function kd(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode(key);
var regex = /[A-Z\x08]/;
if (!regex.test(key)) {
theEvent.returnValue = false;
if (theEvent.preventDefault) theEvent.preventDefault();
}
}

如有任何帮助,我们将不胜感激。

最佳答案

问号应该放在 character class 里面:

/[A-Z\x08?]/

另一个问题是您应该使用 onkeypress 来确定键入的是哪个字符。 onkeyuponkeydown 事件只告诉您按下和释放了哪些键,但没有说明这些对应的字符。在不同的键盘上,您必须按不同的键才能生成相同的字符。

例如,在我的键盘上,我必须按 Shift+ 才能得到 ?。在美式键盘上,您通常必须按 Shift/ 才能得到 ?。由于键盘布局的这种差异,使用 onkeyup 和 onkeydown 事件来检测 ? 是不可靠的。

关于javascript - Javascript中的正则表达式来解析onKeyDown的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14035033/

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