在我的应用程序中,只有正则表达式的文本字段:/ [A-Z0-9 _] /应该被允许。 当我们使用下面粘贴的代码从键盘输入值时,它的工作正常。 问题是当我粘贴时,使用ctrl + v和rightclick paste接受除正则表达式之外的某些值。 注意我禁用右键单击和键盘上的ctrl + v事件,这对我的问题不是很好的解决方案请帮我解决这个问题.. 请告诉我如何在粘贴一些文本后验证文本字段的值。
Mycode: {
xtype: 'textfield',
flex: 1,
allowBlank: false,
maskRe: /[A-Z0-9_]/,
maxLength: 50,
regex: /[A-Z0-9_]/,
ref: '../refField',
enableKeyEvents:true,
listeners: {
keydown: function(field, e){
if((e.getKey() ==86) && e.ctrlKey){
e.stopEvent();
}
}
}
}
此致 拉吉
答案 0 :(得分:3)
您可以尝试在keyup事件上调用validate方法,如下所示:
但正如他们所说,它并不能保证这适用于所有浏览器。在我看来,100%解决方案是在模糊事件中调用字段上的validate()。
类似的东西:
combo.on('blur', funciton(field){
!if(field.isValid()){
//do what you need, for example clean the value in the field
}
})