如何解决Extjs中Ajax异步变同步的问题
Ext.Ajax.request({ url: "StreamingProxy.ashx", method: "GET", async: false, //ASYNC 是否异步( TRUE 异步 , FALSE 同步) params: { //将真正的页面(服务)url参数传递到代理页面 u: url, m: "GET", t: "" }, success: function(response, opts) { }, //请求成功的回调函数 failure: function() { alert("获取目录请求失败!"); } // 请求失败的回调函数 });
可以设置ajax请求为同步请求么
jquery的ajax有一个ajaxSetup方法,可以通过它设置 Ajax 请求的默认值。$.ajaxSetup({ async: false, //默认为true,改为false 则为同步请求 url: "XXXXXXX", type: "POST", success:function(result){ $("div").html(result); }});//然后执行ajax$.ajax();也可以直接设置$.ajax({url:"XXXX",async:false,........});jquery是默认异步的,可以添加一个参数:async: false$.ajax({ async:false, url: '…………', type: 'post' data: {…………}, dataType:'json', success: function(){…………}, failure: function(){…………}, error: function(){…………} });
且都是异步的,怎样拿取最后一次ajax请求的返回数据
通过XMLHttpRequest对象来向服务器发送异步请求,从服务器获取数据。
然后用JavaScript来操作DOM而更新页面。
XMLHttpRequest是ajax的核心机制,它是IE5中首先引入的,是一种支持异步请求的技术。
简单的说,也就是JavaScript可以及时的向服务器提出请求并及时响应。而不阻塞用户。达到无刷新效果。
由事件触发,创建一个XMLHttpRequest对象,把HTTP方法 (POST/GET)和目标URL以及请求返回后的回调函数设置到XMLHttpRequest对象,通过XMLHttpRequest向服务器发送请求,请求发送后继续响应用户的界面交互,只有等到请求真正从服务器返回的时候才调用callback()函数,对响应数据进行处理。
还没有评论,来说两句吧...