Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ExtJs:当textfield被聚焦时,在textfield中手动触发粘贴事件_Javascript_Extjs_Extjs4.2 - Fatal编程技术网

Javascript ExtJs:当textfield被聚焦时,在textfield中手动触发粘贴事件

Javascript ExtJs:当textfield被聚焦时,在textfield中手动触发粘贴事件,javascript,extjs,extjs4.2,Javascript,Extjs,Extjs4.2,我有一个文本字段,它应该包含剪贴板数据,粘贴操作应该在单击或聚焦该文本字段时执行,而不是按Ctrl+V键 编辑 我已成功触发粘贴事件,但剪贴板数据为空 fld.getEl().on('paste', me.pasteFromClipboard,fld); fld.getEl().on('click', function(evt,target){ var ev=document.createEvent("KeyboardEvent"); ev

我有一个文本字段,它应该包含剪贴板数据,粘贴操作应该在单击或聚焦该文本字段时执行,而不是按Ctrl+V键

编辑 我已成功触发粘贴事件,但剪贴板数据为空

  fld.getEl().on('paste', me.pasteFromClipboard,fld);
  fld.getEl().on('click', function(evt,target){
            var ev=document.createEvent("KeyboardEvent");
            ev.initKeyboardEvent('paste',true,true,window,true,false,false,false,86,86);
            this.getEl().dom.dispatchEvent(ev);
        },fld);
pasteFromClipboard是:

  pasteFromClipboard : function(evt,target){
      var pastedText = "";
      if (Ext.isIE) {
         pastedText = window.clipboardData.getData('Text');
      }
      else if (Ext.isGecko) {
         pastedText = "";
      }
      else if (Ext.isOpera) {
         pastedText = evt.browserEvent.clipboardData.getData('text/plain');
      }
      else if (Ext.isWebKit) {
        //WebKit based browsers. i.e: Chrome, Safari
         pastedText = evt.browserEvent.clipboardData.getData('text/plain');
      }
    evt.stopEvent();
    if(pastedText.indexOf('#') == 0){
        pastedText = pastedText.substr(1,pastedText.length);
        this.setValue(pastedText);  
    }
 }
我怎样才能做到这一点


提前感谢。

触发事件的对象似乎与侦听事件的对象不同

fld.on('paste', me.pasteFromClipboard,fld);
fld.on('click', function(evt,target){
    fld.fireEvent('paste'); // Trigger Paste Event.
},fld);
现在,发射和监听都与
fld