我需要访问Extjs组合框中keydown事件的剪贴板数据,才能执行某些操作。
我试过window.clipboardData。
请找到小提琴:https://fiddle.sencha.com/#fiddle/1cc2
Ext.create('Ext.form.field.Tag',{
renderTo:Ext.getBody(),
createNewOnEnter:true,
store:[1,2,3],
enableKeyEvents:true,
listeners:{
keydown:function(combo,e){
if(e.getKey() === e.V && e.ctrlKey){
//get Clipboard data here
combo.preventKeyUpEvent = e.V;
e.stopEvent();
}
}
}
});
最佳答案
我认为您可以将paste事件侦听器添加到组合(实际上是它的选择器)中,并使用ClipboardEvent接口的方法获取剪贴板数据,如下所示:
combo.getEl().addListener(
'paste',
function(event, element, options) {
var clipboardData = event.browserEvent.clipboardData;
console.log(clipboardData.getData('Text'));
}
);
Working fiddle