我有一个ExtJS form.field.Date,如下所示;
{
xtype: 'datefield',
name: 'X_Cut_Process_Completed_Date',
format: 'd M Y',
startDay: 1,
allowBlank: true,
editable: false,
listeners: {
specialkey: function(field, e){
if (e.getKey() == e.DELETE) {
field.setValue('');
}
}
}
}
我被要求实施一个事件,该事件在编辑datefield
时(在关联的datepicker
打开时)捕获Delete键,清除datefield
和datepicker
的值关闭specialkey
。现有的datefield
侦听器仅在datefield
未被编辑时清除该值。
如何实现关闭datepicker
datefield
并同时清除{{1}}值的侦听器?
答案 0 :(得分:0)
[UPDATE]
您可以获取选择器并隐藏它:
field.getPicker().hide()
我测试了它并且它有效。为yoursef测试它:
:
Ext.ComponentQuery.query('datefield')[0].on('specialkey', function(field, e){
if(e.getKey() === e.DELETE) {
field.getPicker().hide();
field.setValue('');
}
});
现在在日期字段中打开选择器,键入内容并按删除。两个字段都被清除,选择器被隐藏。