(ExtJs 3.0)Ext.Ajax.request的同步请求实现(转载)

ext3.0之前都是这样来提交: 
var responsea = Ext.lib.Ajax.getConnectionObject().conn; 
responsea.open("POST", your url,false); 
responsea.send(null); 
alert("返回来的数据为:"+responsea.responseText); 

3.0版本的实现方式 需要引入一个新的js文件,叫做ext-basex.js, 

Javascript代码   收藏代码
  1. Ext.Ajax.request({  
  2.             url: "StreamingProxy.ashx",      
  3.             method: "GET",  
  4.             async: false,   //ASYNC 是否异步( TRUE 异步 , FALSE 同步)  
  5.             params: {                                    //将真正的页面  (服务)url参数传递到代理页面  
  6.                 u: url,  
  7.                 m: "GET",  
  8.                 t: ""  
  9.             },  
  10.             success: function(response, opts) {  
  11.             }, //请求成功的回调函数   
  12.             failure: function() { alert("获取目录请求失败!"); }  // 请求失败的回调函数  
  13.         });  

这个文件在FF12上使用会有问题,会导致无法请求,在IE和Chrome上没问题,需要做一些代码修改: 
修改ext-basex-debug.js文件中的一条语句: 
将下面一段代码: 
Javascript代码   收藏代码
  1. if(callback && callback.timeout){  

改成 
Javascript代码   收藏代码
  1. if(callback && callback.timeout && options.async){    

添加了“&& options.async” 
如果你不是使用的debug版,使用的是压缩的版本,那么在ext-basex.js中查找“if(u&&u.timeout){”(注意不含引号),找到后修改为“if(u&&u.timeout&&n.async){”,当然,你可以直接替换。 

结论: 

将“if(u&&u.timeout){”改为“if(u&&u.timeout&&n.async){” 

还有种方法: 
in ext-basex.js 4.1 about line 1011 
('timeout' in r) && (r.timeout = callback.timeout); 
modified to : 
(options.async) && ('timeout' in r) && (r.timeout = callback.timeout); 


http://www.sencha.com/forum/showthread.php?21681-ext-basex-JIT-4.0-adapter-extensions-Ajax-enhancements-and-more./page42 

博文转自http://blog.csdn.net/e_wsq/article/details/7521373 

http://xfbbsnet.iteye.com/blog/1510680

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值