六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 30|回复: 0

ExtJS提交服务器的三种方式

[复制链接]

升级  60.67%

118

主题

118

主题

118

主题

举人

Rank: 3Rank: 3

积分
382
 楼主| 发表于 2013-1-23 02:41:09 | 显示全部楼层 |阅读模式
1, EXT的form表单ajax提交(默认提交方式)
     相对单独的ajax提交来说优点在于能省略写参数数组
    将按钮添加单击事件,执行以下方法
function login(item) {              if (validatorForm()) {    // 登录时将登录按钮设为disabled,防止重复提交    this.disabled = true;// 第一个参数可以为submit和load    formPanl.form.doAction('submit', {url : 'user.do?method=login',  method : 'post',// 如果有表单以外的其它参数,可以加在这里。我这里暂时为空,也可以将下面这句省略    params : '', // 第一个参数是传入该表单,第二个是Ext.form.Action对象用来取得服务器端传过来的json数据    success : function(form, action) { Ext.Msg.alert('操作', action.result.data);    this.disabled = false;  },    failure : function(form, action) { Ext.Msg.alert('警告', '用户名或密码错误!');    // 登录失败,将提交按钮重新设为可操作    this.disabled = false;  }    });    this.disabled = false;    }    }

2、EXT表单的非ajax提交  在表单需加入下列代码
//实现非AJAX提交表单一定要加下面的两行! onSubmit : Ext.emptyFn, submit : function() {     //再次设定action的地址     this.getEl().dom.action ='user.do?method=login'; this.getEl().dom.method = 'post';     //提交submit     this.getEl().dom.submit();    },


3、EXT的ajax提交
Ext.Ajax.request({        url: 'login.do',    //请求地址  //提交参数组     params: {     LoginName:Ext.get('LoginName').dom.value,     LoginPassword:Ext.get('LoginPassword').dom.value     },     //成功时回调     success: function(response, options) {    //获取响应的json字符串       var responseArray = Ext.util.JSON.decode(response.responseText);                                                 if(responseArray.success==true){    Ext.Msg.alert('恭喜','您已成功登录!');        } else{    Ext.Msg.alert('失败','登录失败,请重新登录');        }    }    });
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表