2014-12-18 49 views
3

我有一個網格,點擊時需要幾秒鐘來拉起我的彈出窗口。我想在加載彈出窗口時顯示「加載...」消息。這是我到目前爲止有:Extjs加載掩碼

onCellClick : function(view, td, eOpts) { 
    var myMask = new Ext.LoadMask(Ext.getBody(), {msg:"Please wait..."}); 
    myMask.show(); 
    Ext.create('myapp.view.DetailWindow', { 
     title : 'my title', 
     width : 900, 
     approachRec : record 
    }); 
    myMask.hide(); 

} 

眼下這個完美的作品,有一次我在我看來箱裝載然後就離開電網點擊一個細胞一旦我的「DetailWindow」上來。

但是,一旦我關閉了我的窗口並再次單擊另一個單元格(或同一個單元格)。沒有加載框出現,但我的'細節'窗口。我究竟做錯了什麼?

爲了在每次點擊單元格時彈出我的加載框,我需要做些什麼?

我使用ExtJS的4.2

感謝,

+0

什麼版本的ExtJS? –

+0

@GeorgeJempty Extjs 4.2 – hunterInt

回答

3

你張貼不顯示的代碼()的窗口,它只是創建它。下面是我開發的一些代碼,這些代碼「工作」(我使用setTimeout在延遲3秒後顯示窗口,然後隱藏加載掩碼),但我認爲要解決問題的核心,您將不得不使用您的調試器,並查看它是否在控制檯中顯示任何錯誤。

grid.on('cellclick', function() { 
    var myMask = new Ext.LoadMask(Ext.getBody(), {msg:"Please wait..."}); 
    myMask.show(); 
    var window = Ext.create('Ext.window.Window', { 
     title: 'Hello', 
     height: 200, 
     width: 400 
    }); 
    setTimeout(function() { 
     window.show(); 
     myMask.hide(); 
    }, 3000); 
}); 
+0

嗯,我有我的項目設置我的窗口的方式每次單元格單擊時(像它應該)。我的問題是,我不能讓加載窗口出現每次單元格點擊。雖然 – hunterInt

+2

使用您的開發人員工具進行調試,它可能會顯示某種錯誤,當您單擊單元格並且加載掩碼不顯示 –