Extjs加载掩码

时间:2014-12-18 17:21:58

标签: javascript extjs extjs4 extjs4.2 loadmask

我有一个网格,点击时需要几秒钟才能拉出我的弹出窗口。我想要一个装载......'弹出窗口加载时显示的消息。这就是我到目前为止所做的:

    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();

}

现在这种方法很完美,一旦我点击网格中的一个单元格,我的加载框就会出现,然后一旦我的“细节窗口”出现就消失了。过来。

然而,一旦我关闭窗口并再次点击另一个单元格(或同一个单元格)。没有加载框,但我的详细信息'窗户呢。我究竟做错了什么?

每次点击单元格时,为了让我的装载框弹出,我需要做什么?

我使用的是Extjs 4.2

谢谢,

1 个答案:

答案 0 :(得分: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);
});