给Extjs的window弹窗的关闭事件添加验证

问题:我想在window点击右上角叉关闭时添加一些验证,来确定是否关闭?

实现:

首先想到的是拦截window的关闭事件,在它关闭前添加验证,但是有一个问题是,如何阻止它的关闭和组织关闭后,如何让它再关闭。所以咱们可以换另一种思路,去掉window原先的关闭的按钮,自己添加一个按钮,来模拟。

去掉原先的关闭按钮

closable:false,

模拟按钮

initComponent: function () {
        var me = this;
        Ext.apply(me,{
            tools:[{
                type:'close',
                tooltip: '关闭',
                handler: function(event, toolEl, panelHeader) {
                    Ext.Msg.confirm("关闭","确定关闭?",function(res){
                        //验证逻辑
                        if(res==="yes"){
                            me.close();
                        }
                    })
                }
            }]
        })
        me.callParent(arguments);
    }
posted @ 2017-10-23 15:22  AikenZhang  阅读(1568)  评论(0编辑  收藏  举报