点击Ext.Window右上角的关闭这个window就不能再次弹出

如题,点击Ext.Window右上角的关闭,之后,这个window就不能再次弹出鸟,js报错:Uncaught TypeError: Cannot call method 'getForm' of undefined 。版本为ext2.2。window+form表单啊,怎能这样就歇菜了。

好明显,问题应该是form.panel被铲掉了,网上查了一下,靠谱的说法是这样的:点击“叉叉”关闭window的同时把form panel也销毁了。

修改办法有多种:

(1)在window的属性值添加:closeAction:'hide'。默认是‘destroy’的,所以就会销毁window里面的form。

(2)在window的属性值添加:closable:false。屏蔽了右上角的叉叉。

(3)把 new (form) panel 在window里面,这种方法应该比较适合ext4。

相对之下,前两种方法很简单啊,即拿即用吧。每次new一个window时,不要忘记加上这个属性就行了。贴示例代码:

	addwin = new Ext.Window({
	    //closable:false,	//去掉右上角的叉叉按钮
	    closeAction:'hide', 
	    bodyStyle:'padding:5px',
	    plain: true,
            frame: true,
            id:'authwin',
            width: 680,
	    height:480,
	    layout:"form",
            items:[addform]
	});


你可能感兴趣的:(前端开发,ExtJS,ext,表单,form,关闭)