tengo una FormPanel extjs2:cerrar ventana extjs después del envío del formulario
var fsf = new Ext.FormPanel({
labelWidth: 75, // label settings here cascade unless overridden
frame:true,
id: 'formPanel',
title: 'Simple Form with FieldSets',
bodyStyle:'padding:5px 5px 0',
width: 550,
items: [{
xtype:'fieldset',
checkboxToggle:true,
title: 'User Information',
autoHeight:true,
defaults: {width: 210},
defaultType: 'textfield',
collapsed: true,
items :[{
fieldLabel: 'First Name',
name: 'first',
allowBlank:false
},{
fieldLabel: 'Last Name',
name: 'last'
},{
fieldLabel: 'Company',
name: 'company'
}, {
fieldLabel: 'Email',
name: 'email',
vtype:'email'
}
]
},{
xtype:'fieldset',
title: 'Phone Number',
collapsible: true,
autoHeight:true,
defaults: {width: 210},
defaultType: 'textfield',
items :[{
fieldLabel: 'Home',
name: 'home',
value: '(888) 555-1212'
},{
fieldLabel: 'Business',
name: 'business'
},{
fieldLabel: 'Mobile',
name: 'mobile'
},{
fieldLabel: 'Fax',
name: 'fax'
}
]
}],
buttons: [{
text: 'Save',
handler: function(){
var form = Ext.getCmp('formPanel').getForm();
if(form.isValid())
form.submit({
waitMsg:'Loading...',
url: 'RepeatSession.jsp',
success: function(form,action) {
//we have to close the window here!!
},
failure: function(form,action){
Ext.MessageBox.alert('Erro',action.result.data.msg);
}
});
}
},{
text: 'Cancel'
}]
});
y una ventana:
win = new Ext.Window(
{
layout: 'fit',
width: 500,
height: 300,
modal: true,
closeAction: 'hide',
items: fsf
});
win.show();
Como se puede ver, el panel de formato está dentro de la ventana como un elemento. Tengo que cerrar la ventana después de una presentación exitosa del formulario, pero no tengo idea de cómo acceder al objeto ventana dentro de mi controlador de éxito.
¿Cómo puedo ocultar la ventana después de enviar correctamente el formulario?
El código anterior no funcionó, pero como sugirió en su respuesta, hice 'win' disponible en mi código (creando win y form, y luego agregando formulario al win por' win.add() ') y llamado 'win.close()' dentro del manejador. – danrah
'función (botón, e)' exactamente lo que necesitaba para pasar información sobre un formulario externo al controlador. Siempre siempre siempre regrese a la documentación y vea las firmas de la función del oyente del evento. – Meredith
Normalmente solo copio toda la firma en mi código e ignoro mi IDE quejándose de los parámetros no procesados. – AndreKR