ExtJS的grid行編輯插件事件觸發

       原本這個號是爲了找工做(記錄本身找工做期間刷代碼的所想所得,重要是僞裝本身有一個技術博客...),可是排序算法還沒刷完就找到了工做,因此就懶病繼續發做就沒寫了。如今工做了,真是什麼都不懂,爲了記錄工做中遇到的問題,必須再把它撿起來。javascript

       最近的項目中要用到ExtJS,由於根本就不懂,因此就給我安排了一個簡單的表格增刪查改的實現,之中遇到了許多問題,慢慢解決吧,如今先說說在一個grid中,當使用了行編輯插件後,點擊保存如何觸發事件。java

       如何在view面設置一個監聽、觸發監聽,以後在控制器頁面來處理這個監聽程序,過程以下:對於每個類,由什麼來觸發監聽,能夠再ExtJS自帶的api文檔中找到該類的Events項,裏面有哪些事件,哪些事件就能觸發監聽。例如Ext.grid.plugin.RowEditing類,有beforeedit、canceledit、edit、validateedit四種事件,那麼listener就能夠監聽這四種事件,閱讀api文檔可知它們分別監聽什麼事件,在view頁面插件配置項下編寫以下代碼:算法

listeners: {
            edit: {
                fn: 'wobuzhidao',
                scope: 'controller'
            }
        }

  Listeners監聽了edit事件,其處理函數名爲wobuzhidao,做用範圍在控制器,控制器代碼以下api

wobuzhidao: function (editor, context, eOpts) {
        alert(context.record.get('age'));
    }

       在這個處理函數裏,有3個參數,是從view頁面監聽程序的edit傳過來的,經過查閱api文檔咱們能夠看到這三個參數,而且知道他們分別表明什麼。以上代碼實現了在grid裏的plugin插件中,對行編輯設置了一個監聽,當編輯保存後會觸發edit事件,經過context參數的.record.get(‘age’)獲取編輯行對應列的值。函數

相關文章
相關標籤/搜索