如何在jQuery中“区分大小写”地检测字符onkeypress?
onkeypress
qyzbxkaa1#
使用.keypress并查看事件的which属性,如该页所述。该页底部附近有一个演示部分,您可以在其中键入'a'并查看值为97,然后键入'A'并查看值为65。(By顺便说一下,我假设您的意思是“case-sensitively“,而不是“区分大小写”。)
q8l4jmvw2#
查看此Fiddle Example
// type 'a': 97 // type 'A': 65 $('input').keypress(function(e){ console.log(e.which) });
lrpiutwd3#
不需要jQuery,因为它只做最简单的规范化,正如在其他地方提到的,keypress是处理关键事件的唯一选项,获取字符非常简单:
keypress
document.onkeypress = function(e) { e = e || window.event; var charCode = (typeof e.which == "number") ? e.which : e.keyCode; if (charCode) { alert("Character typed: " + String.fromCharCode(charCode)); } };
请注意,在一些浏览器中,您会收到字符不可打印键的警告,jQuery无法保护您(它的规范化与我的几乎相同)。要了解更多信息,请参阅当前关于JavaScript键事件的权威参考:http://unixpapa.com/js/key.html我最近也写了一个类似的问题(稍微)更长的时间:JavaScript键码与字符码
aamkag614#
您可以简单地使用string.match()(一个普通的javascript函数)更多详情:link text如果你给予更多信息我们也许能帮你。
string.match()
ioekq8ef5#
有一点需要注意的是,这只适用于keypress,所以在尝试使用keydown和keyup时要小心,这是来自keypress的jquery documentation:请注意,keydown和keyup提供了一个代码,指示按下了哪个键,而keypress指示输入了哪个字符。
5条答案
按热度按时间qyzbxkaa1#
使用.keypress并查看事件的which属性,如该页所述。该页底部附近有一个演示部分,您可以在其中键入'a'并查看值为97,然后键入'A'并查看值为65。
(By顺便说一下,我假设您的意思是“case-sensitively“,而不是“区分大小写”。)
q8l4jmvw2#
查看此Fiddle Example
lrpiutwd3#
不需要jQuery,因为它只做最简单的规范化,正如在其他地方提到的,
keypress
是处理关键事件的唯一选项,获取字符非常简单:请注意,在一些浏览器中,您会收到字符不可打印键的警告,jQuery无法保护您(它的规范化与我的几乎相同)。要了解更多信息,请参阅当前关于JavaScript键事件的权威参考:http://unixpapa.com/js/key.html
我最近也写了一个类似的问题(稍微)更长的时间:JavaScript键码与字符码
aamkag614#
您可以简单地使用
string.match()
(一个普通的javascript函数)更多详情:link text
如果你给予更多信息我们也许能帮你。
ioekq8ef5#
有一点需要注意的是,这只适用于keypress,所以在尝试使用keydown和keyup时要小心,这是来自keypress的jquery documentation:
请注意,keydown和keyup提供了一个代码,指示按下了哪个键,而keypress指示输入了哪个字符。