zoukankan      html  css  js  c++  java
  • 基于对象的EXT组件间通信

    基于对象的EXT组件间通信

    问题提出:主界面上有上下两个gridPanel,在点击上面的gridPanel的时候,触发下面的gridPanel事件,如联动表格

    解决方案:
    1.在 GridPanel_1 中注册一个事件

    this.addEvents({'onClickGridRow':true});

    2.获取GridPanel_1的行点击事件

    this.on({'rowclick':this.onGetSelectionModel,scope:this});

    3.GridPanel_1 行点击事件函数获取行的记录,并触发自定义事件

    onGetSelectionModel:function(){
          var sm = this.getSelectionModel();
          var record=sm.getSelected();
       this.fireEvent('onClickGridRow',record);
    }

    4.在父组件中获取自定义事件

    this.aGrid = this.items.itemAt(0);
    this.aGrid.on({'onClickGridRow':this.onRecordFromGrid,scope:this});

    5.父组件自定义事件处理函数中调用gridPanel_2的方法
    ,onRecordFromGrid:function(record){
     this.bGrid = this.items.itemAt(1);
     this.bGrid.refreshBGrid(record);
    }

    6.在gridPanel_2中定义事件处理方法
    ,refreshBGrid:function(record){
     alert(record.get('id'));
     this.getStore().baseParams['id'] = record.get('id');
     this.getStore().reload();
    }

  • 相关阅读:
    SharePoint REST API
    线程同步
    win32
    win32
    win32
    win32
    win32
    win32
    win32
    解决CentOS被wbew挖矿程序入侵的方法
  • 原文地址:https://www.cnblogs.com/meetrice/p/1533198.html
Copyright © 2011-2022 走看看