lym6520 发表于 2013-1-23 02:51:10

ext 表单提交

上个ext表单提交的例子,用servlet作为表单的服务器验证,当用户名和密码相同时,提示验证通过,否则提示验证失败。(附例子)
帖出ext表单布局代码
Ext.onReady(function(){// 编码方式Ext.lib.Ajax.defaultPostHeader += '; charset=utf-8';          // 使用表单提示          Ext.QuickTips.init();          Ext.form.Field.prototype.msgTarget = 'side';      // 定义表单          var simple = new Ext.FormPanel({            labelWidth: 75,            baseCls: 'x-plain',            defaults: {width: 150},            defaultType: 'textfield',// 默认字段类型            // 定义表单元素            items: [{                  fieldLabel: '帐户',                  name: 'name',// 元素名称                  // anchor:'95%',//也可用此定义自适应宽度                  allowBlank:false,// 不允许为空                  blankText:'帐户不能为空'// 错误提示内容               },{                  inputType:'password',                  fieldLabel: '密码',                  // anchor:'95%',                  name: 'pws',                  allowBlank:false,                  blankText:'密码不能为空'               }            ],            buttons: [{               text: '登陆',               type: 'submit',               // 定义表单提交事件               handler:function(){ if(simple.form.isValid()){// 验证合法后使用加载进度条                           Ext.MessageBox.show({                              title: '请稍等',                              msg: '正在加载...',                              progressText: '',                              width:300,                              progress:true,                              closable:false,                              animEl: 'loding'                           });                           // 控制进度速度                           var f = function(v){                            return function(){                                    var i = v/11;                                    Ext.MessageBox.updateProgress(i, '');                                    };                           };                           for(var i = 1; i < 13; i++){                              setTimeout(f(i), i*150);                           }                        // 提交到服务器操作                        simple.form.doAction('submit',{                            url:'servlet/loginServer',// 文件路径                            method:'post',// 提交方法post或get                            params:'',                            // 提交成功的回调函数                            success:function(form,action){                                                             if (action.result.msg=='ok') {                                 Ext.Msg.alert('登陆成功',action.result.msg);                                 // document.location='index.html';                                 } else {                                    Ext.Msg.alert('登陆错误',action.result.msg);                                 }                            },                            // 提交失败的回调函数                            failure:function(){                                 Ext.Msg.alert('错误','服务器出现错误请稍后再试!');                            }                        });                        }               }            },{               text: '取消',               handler:function(){simple.form.reset();}// 重置表单            }]         });                // 定义窗体               win = new Ext.Window({                  id:'win',                  title:'用户登陆',                  layout:'fit',   // 布局方式fit,自适应布局                  width:300,                  height:150,                  plain:true,                  bodyStyle:'padding:5px;',                  maximizable:false,// 禁止最大化                  closeAction:'close',                  closable:false,// 禁止关闭                  collapsible:true,// 可折叠                  plain: true,                  buttonAlign:'center',                  items:simple// 将表单作为窗体元素嵌套布局               });               win.show();// 显示窗体       });

效果图
http://lym6520.iteye.com/upload/attachment/79292/1641585c-e169-3265-8402-09f3f8ce91ec.gif
页: [1]
查看完整版本: ext 表单提交