我似乎无法在任何地方找到它.我想找到检查击键是否实际上是一个角色的最佳方法.
listeners:{
'keyup':function(f, e){
//Is key a letter/character
}
}
Run Code Online (Sandbox Code Playgroud)
编辑
感谢所有回答的人,我知道如何检测按下的实际键,我想知道如何检测键是否实际上是一个字符(不是箭头,退格键,输入等)
要捕获键盘事件,必须将enableKeyEvents组件的属性设置为true.
...,
enableKeyEvents: true,
listeners:{
'keyup': function(f, e){
var charCode = e.getCharCode();
var key = e.getKey();
}
},
...
Run Code Online (Sandbox Code Playgroud)
有关keyCode和charCode之间差异的说明,请参阅" 检测击键 " .
您需要捕获发送到事件的参数.然后评估event.getKey():
listeners:{
'keyup':function(field, event){
if(event.getKey() >= 65 && event.getKey() <= 90) {
//the key was A-Z
}
if(event.getKey() >= 97 && event.getKey() <= 122) {
//the key was a-z
}
}
}
Run Code Online (Sandbox Code Playgroud)
您需要具有正确的事件参数。
'keyup': {
fn: function(field,event) {
//use event.getKey() to get the key
}
}
Run Code Online (Sandbox Code Playgroud)
第一个参数是字段(表单元素),第二个是事件对象。您可以使用事件对象来获取按键详细信息。使用getKey()方法或getCharCode()根据您的要求。
getKey方法返回数字代码。您将必须比较范围(a = 65&z = 90),以检查按键是否为字符。Ext JS提供了一些用于检查特殊键的静态变量。