加载数据

来源:互联网 发布:国外教育学专业 知乎 编辑:程序博客网 时间:2024/05/17 08:11
              /**
* 加载数据

* 参数说明:
* url:请求URL,必填;
* async:异步请求,默认false;
* dataType:数据类型,默认json格式;
* type:请求模式,默认'post';
* data:请求数据,可空;
* callback: 回调函数;

* 示例:
* req = {
* url:'',
* async: true,
* dataType: 'json',
* type: 'post'
* data: [],
* callback: function(){},
* }
*/
loadData: function(req){
/**20150326 参考 req.data */
req = $.extend({url: "", async: false, dataType: 'json', data: null, dataName: null, loop: true}, req);
var obj = req.data;
if(!$.isNumeric(obj.pageSize))
obj.pageSize = 200;
/*20150326*/
if(!obj.currentPage)
obj.currentPage = 1;

var successCall = function(result){
if(result.errorMsg || result.errorCode){
if(req.fail){
req.fail(result);
}
return;
}
var query = result.query;
if(query && query.currentPage == 1 && req.init){
req.init(result);
}
req.handle(result);

if(req.loop === true && query 
&& query.totalItem > query.currentPage * query.pageSize){
query.currentPage = query.currentPage + 1;
req.data = query;
return doPost(req);
}
if(req.ready)
req.ready(result);
};

var errorrCall = function(rep){
if(req.error)
req.error(rep);
};


var doPost = function(req){
var obj = req.data;
var param = $wqd.jsonToArr(obj, req.dataName);

$.ajax({
'url' : req.url,
'async' : req.async,
'dataType' : req.dataType,
'type' : "POST",
'data' : param,
'success' :successCall,
'error' : errorrCall
});
}

doPost(req);

},
0 0
原创粉丝点击