如何在 extjs 中的文本字段正则表达式中粘贴一些文本后验证文本字段的值?
在我的应用程序中,有一个文本字段,其中只允许使用正则表达式:/[A-Z0-9_]/。 当我们使用下面粘贴的代码从键盘输入值时,它工作正常。 问题是当我使用 ctrl+v 和右键粘贴接受粘贴正则表达式以外的某些值时。 注意我禁用了右键单击和按下按键时的 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();
}
}
}
}
问候, 拉吉
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以尝试在 keyup 事件上调用 validate 方法,如下所示:
http://www.sencha.com/forum/showthread.php?27147-Trying-to-get-extjs-to-react-to-text-changing-on-a-text-field< /a>
但正如他们所说,它不能保证这在所有浏览器中都有效。在我看来,100% 的解决方案是在 blur 事件中的字段上调用 validate() 。
像这样的东西:
You could try call validate method on the keyup event, as suggested here:
http://www.sencha.com/forum/showthread.php?27147-Trying-to-get-extjs-to-react-to-text-changing-on-a-text-field
But as they say, it wont guarantee that this will work in all browsers. In my view 100% solution is to call validate() on field in the blur event.
something like: