jQuery检测textbox keypress事件中的重音

时间:2013-01-29 15:29:22

标签: jquery events

我想知道是否可以在jQuery键盘事件中检测重音符号(á,ő,ű,ö等)。

提前谢谢。

3 个答案:

答案 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");
}

重要的: 如果需要测试每个字符,则必须遍历字符串。

我希望这有帮助, 再见。