Jquery Deferred objects
2016-04-22 21:48
453 查看
以前写的,后来想不起来了。写在这里以便查找
Deferred objects对我来说就是如果页面里面有两个ajax call对数据库进行操作。比如说两个grid 读取,Ajax执行异步操作的时候,页面显示loading...; 当两个操作都完成时,loading 隐藏
以下是代码片断
$(document).ready(function(e) {
var _loadingImageContainer = $('#IA5010_2_loadingImageContainer_outer');
_loadingImageContainer.removeClass("hidden");
var _outer_groupcategorysection =$('#outer_groupcategorysection');
var _outer_attr=$('#outer_attr');
_outer_groupcategorysection.addClass("hidden");
_outer_attr.addClass("hidden");
var get_para=JSON.stringify({ EnvironmentId: <%=Me.EnvironmentId %>, Company: <%=Me.CompanyNumber%>,
Department: '<%=IA5010_2_Department.Text%>', SizeratioId: <%=CInt(HiddenSizeRatioID.Value)%>});
var get_groupcategorysection=AjaxWrapper( '<%= ResolveUrl("~/IA_Allocation_Vb/IA5010D.aspx/GetGroupCategorySection")%>',get_para);
var get_attr=AjaxWrapper( '<%= ResolveUrl("~/IA_Allocation_Vb/IA5010D.aspx/GetProductAttributes")%>',
get_para);
var loadingdata=$.when (get_groupcategorysection,get_attr);
//success
loadingdata.done(function(data_groupcategorysection,data_attr){ //当两个异步操作成功的时候被调用
IA5010_1_populatedata(data_groupcategorysection,data_attr);
}); //loading data done
loadingdata.always(function(){ //无论成功与否,这个函数都会被调用。把loading隐藏写在这里
_loadingImageContainer.addClass("hidden");
_outer_groupcategorysection.removeClass("hidden");
_outer_attr.removeClass("hidden");
});
//deal with fail
loadingdata.fail(function(){
})
}); //document ready
function AjaxWrapper(webMethodrul, parameterListInJsonFormat) {
var promiseObject = $.ajax({
url: webMethodrul,
contentType: "application/json; charset=utf-8",
type: "POST",
data: parameterListInJsonFormat,
dataType: "json",
cache: false,
});
return promiseObject;
}
Deferred objects对我来说就是如果页面里面有两个ajax call对数据库进行操作。比如说两个grid 读取,Ajax执行异步操作的时候,页面显示loading...; 当两个操作都完成时,loading 隐藏
以下是代码片断
$(document).ready(function(e) {
var _loadingImageContainer = $('#IA5010_2_loadingImageContainer_outer');
_loadingImageContainer.removeClass("hidden");
var _outer_groupcategorysection =$('#outer_groupcategorysection');
var _outer_attr=$('#outer_attr');
_outer_groupcategorysection.addClass("hidden");
_outer_attr.addClass("hidden");
var get_para=JSON.stringify({ EnvironmentId: <%=Me.EnvironmentId %>, Company: <%=Me.CompanyNumber%>,
Department: '<%=IA5010_2_Department.Text%>', SizeratioId: <%=CInt(HiddenSizeRatioID.Value)%>});
var get_groupcategorysection=AjaxWrapper( '<%= ResolveUrl("~/IA_Allocation_Vb/IA5010D.aspx/GetGroupCategorySection")%>',get_para);
var get_attr=AjaxWrapper( '<%= ResolveUrl("~/IA_Allocation_Vb/IA5010D.aspx/GetProductAttributes")%>',
get_para);
var loadingdata=$.when (get_groupcategorysection,get_attr);
//success
loadingdata.done(function(data_groupcategorysection,data_attr){ //当两个异步操作成功的时候被调用
IA5010_1_populatedata(data_groupcategorysection,data_attr);
}); //loading data done
loadingdata.always(function(){ //无论成功与否,这个函数都会被调用。把loading隐藏写在这里
_loadingImageContainer.addClass("hidden");
_outer_groupcategorysection.removeClass("hidden");
_outer_attr.removeClass("hidden");
});
//deal with fail
loadingdata.fail(function(){
})
}); //document ready
function AjaxWrapper(webMethodrul, parameterListInJsonFormat) {
var promiseObject = $.ajax({
url: webMethodrul,
contentType: "application/json; charset=utf-8",
type: "POST",
data: parameterListInJsonFormat,
dataType: "json",
cache: false,
});
return promiseObject;
}
相关文章推荐
- JavaScript Objects in Detail
- HashMap中get(Object key)方法实现
- Objective-C Json格式数据解析
- Objective-C 借助第三方库解析XML格式数据
- Swift中与Objective-C的区别 -> 值类型和引用类型
- iOS学习笔记72-Objective-C Autorelease Pool 的实现原理
- Object-C 基础学习(一)
- ./zabbix_server: error while loading shared libraries: libiconv.so.2: cannot open shared object file
- android setTag (int key, Object tag)抛出IllegalArgumentException的问题
- TypeError: object of type 'NoneType' has no len()
- 走进Scala——伴生对象(Companion Object)
- Object窥探
- [转] Objective-C中的@property和@synthesize用法
- Object-c 编程之道 IOS设计模式解析
- 深入理解Objective-C:Category(下)
- ES6-Object的变化
- 深入理解Objective-C:Category(上)
- JAVA----Object类
- Hide Objects in Congos Connection
- Object-C 获取对象的属性和值