我想知道是否可以在jQuery键盘事件中检测重音符号(á,ő,ű,ö等)。
提前谢谢。
答案 0 :(得分:0)
关键按下事件你可以使用这个ASCII http://www.asciitable.com/index/extend.gif
表查看字符的ASCII码答案 1 :(得分:0)
尝试使用正则表达式...
$('#input').on('keyup', function(){
var myRegex = /[^a-zA-Z0-9]/;
var text = $(this).val();
if(myRegex.test(text)){
alert('accent detected');
}
});
请参阅此jsFiddle Example
...问候
答案 2 :(得分:0)
抱歉@MG_Bautista,但你的回答是错误的。 在您的示例中,如果您尝试使用某些字符,例如!,?,则表示“已检测到重音”。但@sada只需要重音字符 你必须改变正则表达式:
var MyRegex = /[^a-zA-Z0-9!"'\.,{}\[\]\(\)\\=|°#$%&/?¿¡´+*-_]/;
也许我忘记了一些“特殊”角色。因此,真正的解决方案只需要检测您需要的字符而不是不需要的字符。
var MyRegex = /[áéíóúÁÉÍÓÚâêîôû]/; //and all the ones you need to detect
if (MyRegex.test(text)){
alert("accent detected");
}
重要的: 如果需要测试每个字符,则必须遍历字符串。
我希望这有帮助, 再见。