ajax分为2种,一种是同步,一种是异步
同步:代码执行完了之后才执行后面的代码
异步:代码刚执行,后面的代码就马上接着执行了,不管前面的代码是否执行完
异步的情况下,要获得返回信息,就需要在异步执行完之后写代码,也就是在success里面写代码
在Ext3.0 里面 ,Ext.Ajax.request默认是异步的,但是可以通过设置参数async : false来改变其为同步,
async: false, //ASYNC 是否异步( TRUE 异步 , FALSE 同步)
sync:true, //同步 sync:false, //异步
例子:
MyForm.get = function() {
num = "";
Ext.Ajax.request(
{url : __ctxPath + "/project/getReport.do",
method : "post",
async : false, //关键是这里哦!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!@@@@@@@@@@@@@@@@%%%%%%%%%%%%
success : function(g) {
var c = Ext.util.JSON.decode(g.responseText).data[0];
num = c.reportNum;},
failure : function()
{ Ext.ux.Toast.msg('操作提示', '失败!');}});
return num;
}
转载自: http://www.cnblogs.com/wangyp/archive/2010/12/08/1900034.html