2011-12-09 9 views
0

私は3.4.0は二回

<script type="text/javascript" src="js/listaBancos.js"></script> 

ファイルlistaBancos.jsグリッドを表示1つのDIVとのExt Jsを持つ2つのスクリプトとHTMLを持っていますdivListaBancosのツールバーボタンで、初めて "Agregar"ボタンをクリックすると、altaBanco.jsで宣言されたウィンドウが表示されます。

============== listaBancos.jsにおけるグリッドの一部============

tbar:[{ 
    text:'Agregar', 
    tooltip:'Agrega un banco', 
    iconCls:'add', 
    handler: agregaBanco 
}] 

function agregaBanco(){ 
var win =Ext.getCmp('myWin'); 
win.show(); 

}

私は、ウィンドウを閉じると==============ウィンドウがクリック

var winAltaBanco = new Ext.Window({ 
    id  : 'myWin', 
    height : 250, 
    width : 400, 

}); 

================ altaBanco.jsで宣言されましたウィンドウには表示されないボタンが再び表示されます。

私を助けることができますか?

答えて

0

ウィンドウ設定のクローズアクションが非表示に設定されていることを確認してください。

closeAction:'hide' 

チェックthis

1

は、ウィンドウのデフォルトclose作用、すなわち、それはもうDOMに存在しないので、したがって、それは再びExt.geCmp()を使用してアクセスすることができない、コンポーネントを破壊し、closeあります。あなたがcloseAction : hideまたは

var cmp = Ext.getCmp('myId'); 
if(!cmp) 
{ 
cmp = new Ext.Window({ 
    id : 'myId' 
}); 
} 
cmp.show(); 

を設定するいずれかの望むものを達成するために再作成に隠れ好みます。

0

トリックをする必要はありません。ウィンドウIDを削除するだけです。 ExtJSコンポーネントでは、IDは一意でなければなりません。