我有类似的代码:
$("#some-input").keyup(function (event) {
var availableKeys = [".", ",", ";"];
var key = String.fromCharCode(event.which);
if (availableKeys.indexOf(key) != -1) {
alert("Derp");
}
});
然而,它并没有像我预期的那样工作。
event.which
/fromCharCode
组合在数字或字母(大写)上正常工作,这是正确的行为,因为(我认为)事件键码与字符集条目不同。除了直接指定用于比较的键码(保留字符数组是优先事项)之外,还有其他解决方法吗?
最佳答案
您可以改用 keypress
。喜欢
$("#some-input").bind('keypress', function(e) {
var availableKeys = [".", ",", ";"];
if(availableKeys.indexOf( String.fromCharCode( e.which ) ) > -1 ) {
alert('Derp');
}
});
关于javascript - 确定按下的键是否在提供的数组中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8502368/