JavaScript DHTML/Ext JS/Form Mask
Mask form afer clicking the submit button
<source lang="html4strict">
<html> <head> <title>Hello World Window</title> <link rel="stylesheet" type="text/css" href="ext-3.0.0/resources/css/ext-all.css" /> <script type="text/javascript" src="ext-3.0.0/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="ext-3.0.0/ext-all.js"></script> </head> <body> <script type="text/javascript"> Ext.onReady(function() {
Ext.QuickTips.init(); var onSuccessOrFail = function(form, action) { var formPanel = Ext.getCmp("myFormPanel"); formPanel.el.unmask(); var result = action.result; if (result.success) { Ext.MessageBox.alert("Success",action.result.msg); } else { Ext.MessageBox.alert("Failure",action.result.msg); } } var submitHandler = function() { var formPanel = Ext.getCmp("myFormPanel"); formPanel.el.mask("Please wait", "x-mask-loading"); formPanel.getForm().submit({ url : "your.php", success : onSuccessOrFail, failure : onSuccessOrFail }); } var buttons = [ { text : "Submit", handler : submitHandler } ]; var fp = new Ext.form.FormPanel({ renderTo : Ext.getBody(), width : 600, id : "myFormPanel", title : "Our complex form", height : 350, frame : true, layout : "vbox", layoutConfig : { align : "stretch" }, items : [ ], buttons : buttons });
}); </script>
</body> </html>
</source>
Unmask a form
<source lang="html4strict">
<html> <head> <title>Hello World Window</title> <link rel="stylesheet" type="text/css" href="ext-3.0.0/resources/css/ext-all.css" /> <script type="text/javascript" src="ext-3.0.0/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="ext-3.0.0/ext-all.js"></script> </head> <body> <script type="text/javascript"> Ext.onReady(function() { var fieldset1 = {
title : "Name Information", flex : 1, border : false, labelWidth : 50, defaultType : "field", defaults : { anchor : "-10", allowBlank : false }, items : [ { fieldLabel : "First", name : "firstName" }, { fieldLabel : "Address", name : "address" }, { fieldLabel : "Last", name : "lastName" } ]
} var onSuccessOrFail = function(form, action) {
var formPanel = Ext.getCmp("myFormPanel"); formPanel.el.unmask(); var result = action.result; if (result.success) { Ext.MessageBox.alert("Success",action.result.msg); } else { Ext.MessageBox.alert("Failure",action.result.msg); }
} var loadHandler = function() {
var formPanel = Ext.getCmp("myFormPanel"); formPanel.el.mask("Please wait", "x-mask-loading"); formPanel.getForm().load({ url : "translate.php", success : function() { var formPanel = Ext.getCmp("myFormPanel"); formPanel.el.unmask(); } });
} var buttons = [
{ text : "load", handler : loadHandler }
];
var fp = new Ext.form.FormPanel({
renderTo : Ext.getBody(), width : 600, id : "myFormPanel", title : "Our complex form", height : 350, frame : true, layout : "vbox", layoutConfig : { align : "stretch" }, items : [ fieldset1 ], buttons : buttons, reader : new Ext.data.JsonReader({ root : "records", fields : [ { name : "firstName", mapping : "name" }, { name : "lastName", mapping : "nameLast" }, { name : "address", mapping : "addy" } ] })
});
}); </script>
</body> </html>
</source>