ExtJs ajax.request 的变化

//这段请求 有点老了, 有很多缺点
Ext.lib.Ajax.request(
								'POST',       //这里估计要改改
								contextPath+'/xg/xszz/zxdkbAction.do?method=addSqs&sqs='+sqs,
								{
									success:function(response){
										var rs = Ext.decode(response.responseText);
										if(rs.success){
											location.href=contextPath+rs.message;
										}else{
											location.href=contextPath+rs.message;
										}
									},failure:function(){
										Ext.Msg.alert("提示","服务器连接失败!");
									}
								}
							);
 
 
Ext.Ajax.request({
        method: 'POST',
        url: contextPath+'/xg/xszz/zxdkbAction.do?method=addSqs',
        params:{
         sqs:sqs
        },success: function(response){
         var rs = Ext.decode(response.responseText);
         location.href=contextPath+rs;
        }, failure: function(response){
         var rs = Ext.decode(response.responseText);
         location.href=contextPath+rs;
        }
 });
 location.href=contextPath+"/xg/xszz/zxdk/zxdk_pksdjb.html";
 
 
 
 
 
 //看看下面这个老标准吧
Ext.lib.Ajax.request(
'POST',
'07-01txt',
{success: function(response){
Ext.Msg.alert('成功', response.responseText);
},failure: function(){
Ext.Msg.alert('失败', response.responseText);
}},
'data=' + encodeURIComponent(Ext.encode({name:'value'}))
);
 

我们可以看到,使用Ext.lib.Ajax时需要传递4个参数,分别为method、url、callback和params。它们的含义与Ext.Ajax中的参数都是一一对应的,唯一没有提到过的method参数表示请求HTTP的方法,它也可以在Ext.Ajax中使用method:'POST'的方式设置。

相对于Ext.Ajax来说,Ext.lib.Ajax有如下几个缺点。

参数的顺序被定死了,第一个参数是method,第二个参数是url,第三个参数是回调函数callback,第四个参数是params。这样既不容易记忆,也无法省略其中某个不需要的参数。Ext.Ajax中用JSON对象来定义参数,使用起来更灵活。

在params部分,Ext.lib.Ajax必须使用字符串形式,显得有些笨重。Ext.Ajax则可以在JSON对象和字符串之间随意选择,非常灵活。

比与Ext.Ajax相比,Ext.lib.Ajax的唯一优势就是它可以在EXT 1.x中使用。如果你使用的是EXT 2.0或更高的版本,那么就放心大胆地使用Ext.Ajax吧,它会带给你更多的惊喜。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值