Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ExtJS在打开其他窗口之前关闭窗口_Javascript_Extjs_Window - Fatal编程技术网

Javascript ExtJS在打开其他窗口之前关闭窗口

Javascript ExtJS在打开其他窗口之前关闭窗口,javascript,extjs,window,Javascript,Extjs,Window,我想在打开另一扇窗户之前先把窗户关上,我已经试着按下面的方法做了,但没用,有人能帮我吗 我的代码片段: listeners: { click: function() { var win = new Ext.window.Window({ constrain: true, height: 300, title: 'Window', width: 300,

我想在打开另一扇窗户之前先把窗户关上,我已经试着按下面的方法做了,但没用,有人能帮我吗

我的代码片段:

listeners: {
    click: function() {
        var win = new Ext.window.Window({
            constrain: true,
            height: 300,
            title: 'Window',
            width: 300,
            closeAction: 'hide'
        });
        if (win.isVisible() !== true) {
            win.show();
        } else {
            win.close();
        }
    }
}

您可以使用
Ext.WindowManager

Ext.create('Ext.Button'{
文本:“单击我”,
renderTo:Ext.getBody(),
听众:{
单击:函数(){
Ext.WindowManager.each(函数(cmp){
cmp.close();
});
Ext.create('Ext.window.window'{
对,,
身高:300,
标题:“窗口”,
宽度:300,
closeAction:“隐藏”
}).show();
}
}
})

您需要在关闭前将
事件添加到窗口中。在这里你称之为新窗口

Ext.application({
名字:“小提琴”,
启动:函数(){
设i=1;
函数创建窗口(标题){
var win=新的Ext.window.window({
对,,
身高:150,
标题:“窗口”+标题,
宽度:300,
closeAction:'隐藏',
听众:{
beforeclose:函数(发件人、选项){
i++;
创建_窗口(i);
返回true;
}
}
});
if(win.isVisible()!==true){
win.show();
}否则{
win.close();
}    
}
创建_窗口(i);
}
});


win是同一个窗口吗?在关闭第一个窗口并打开第二个窗口后,是否需要一些警告或弹出窗口?
win.isVisible()==正确
刮伤头部
var win = new Ext.window.Window({
            constrain: true,
            height: 300,
            title: 'Window',
            width: 300,
            closeAction: 'hide',
            listeners:{
                beforeclose:function(){
                    Ext.Msg.alert('Close','You\'re closing Window',function(){
                        var win2== new Ext.window.Window({
                            constrain: true,
                            height: 300,
                            title: 'Window2',
                            width: 300,
                            closeAction: 'hide'
                        });
                        win2.show();
                    });
                }
            }
        });
        win.show();