两种实现方法:
1. 为Ext.Ajax添加侦听事件
2. 通过Ext.data.Connection实现
1). 首先定义Ext.data.Connection,并添加监听事件:
2). 使用时通过conn去执行ajax请求
上面的yourGird.loadMask是创建GridPanel时使用的遮罩,也可以使用以下方式创建一个遮罩:
打完收工!!!
1. 为Ext.Ajax添加侦听事件
Ext.Ajax.on("beforerequest", function(){yourGird.loadMask.show();});
Ext.Ajax.on("requestcomplete", function(){yourGgird.loadMask.hide();});
Ext.Ajax.on("requestexception", function(){yourGird.loadMask.hide();});
2. 通过Ext.data.Connection实现
1). 首先定义Ext.data.Connection,并添加监听事件:
var conn = new Ext.data.Connection({
listeners : {
"beforerequest" : function(){yourGird.loadMask.show();},
"requestcomplete" : function(){yourGird.loadMask.hide();},
"requestexception" : function(){yourGird.loadMask.hide();}
}
});
2). 使用时通过conn去执行ajax请求
conn.request({
url : yourUrl,
params: { jsonData : Ext.util.JSON.encode(jsonArray) },
success : function(result){
var json_str = Ext.util.JSON.decode(result.responseText);
if(!json_str.success){ .... }
else { ..... }
},
failure : function(){ ...... }
})
上面的yourGird.loadMask是创建GridPanel时使用的遮罩,也可以使用以下方式创建一个遮罩:
var _loadMask = new Ext.LoadMask()
打完收工!!!