Extjs--点击一个按钮,打开一个新的窗体window重复创建的问题

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:31   1929   0
/*
* 解决方法: 1、利用modal属性:加一个模态窗口,屏蔽按钮
* 2、为新创建的窗口添加id,判断id是否存在,如果不存在在创建
* 3、先创建一个窗体,利用closeAction属性设置为隐藏(默认为销毁),先创建窗体,然后为按钮绑定事件

* 调用窗体的show方法;不建议,浪费内存,每次都是隐藏起来

*/

第一种:

var btn=Ext.get('btn'); //这个元素是经过Ext包装以后的Dom对象;
//显示btn的值 alert(btn.dom.value);
btn.on('click',function(){
//if(!Ext.get('mywin')){
Ext.create('Ext.window.Window',{
id:'mywin',
title:'新窗口',
width:300,
height:200,
modal:true,
renderTo:Ext.getBody()
}).show();
第二种:

var btn=Ext.get('btn'); //这个元素是经过Ext包装以后的Dom对象;
//显示btn的值 alert(btn.dom.value);
btn.on('click',function(){
if(!Ext.get('mywin')){
Ext.create('Ext.window.Window',{
id:'mywin',
title:'新窗口',
width:300,
height:200,
// modal:true,
renderTo:Ext.getBody()
}).show();

}
});

第三种:(不建议,浪费内存,每次都是隐藏起来)


var win=Ext.create('Ext.window.Window',{
title:'新窗口',
width:300,
height:200,
closeAction:'hide',//closeAction默认值为destory,关闭就销毁,设置为hide是隐藏起来show方法会重新展示
renderTo:Ext.getBody()
});
btn.on('click',function(){
win.show();
});

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP