ext.ajax.request如何同步调用,Ext 2.2-2.3 Ext.ajax.request 同步请求的实现

根据不同的应用场景 ,有时会用到 ajax的不同请求

原理说明:创建XMLHttpRequest 的对象

XMLHttpRequest 对象open(method,url,async) 方法中有3个参数 分别为 请求的类型,请求地址,异步或同步

Ext 2.2-2.3的源码中

Ext.ajax.request 最终调用 Ext.lib.Ajax.request(method,cb,p,o)

Exl.lib.Ajax 位于 ext-base.js

其中源码的最后一句为 return this.asyncRequest(method,data)

这是一个异步请求:o.conn.open(method,true)

由于Ext2.2-2.3没有提供同步请求的方法

所以需要扩展Ext.lib.Ajax

例:

对于同步请求 url 和syns是必须的 其他可以省略

如果标记为 同步请求 将不再调用this.handleReadyState(o,callback);不进行判断和回调函数的处理

因此 例子如下

var cb={ success:this.handleResponse,failure:this.handleFailure,scope:this,argument:{ options:o },timeout:o.timeout==0?o.timeout:o.timeout||this.timeout }; 调用实例: var o=Ext.Ajax.request{ url:'xx.actiom',params:pram,method:'post',sync:true//标记为同步 不标记 默认为异步需要按异步方式写success函数 } if(!o){ return false; } var result =Ext.decode(o.conn.responseText);

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值