/**
?* 封装的ajax请求函数有利于集中处理一些公共部分
?* 调用ajax
*/
$(document).on(‘click‘, ‘.btn‘, function(e) {
???var data = {};
???var reqObj = {
???????data: data,
???????callback: {
???????????success: function(res) {
???????????????alert(‘成功‘);
???????????},
error: function(res){
alert(‘失败‘);
}
???????}
???};
???ajax(api.apply, reqObj, ‘post‘); ?
});
/**
???* 简单封装的ajax请求函数
???* @param ???url : ???请求的地址参数
???* @param ?reqObj: ???请求的参数集合,包含请求数据data,回调函数callback(beforeSend/success/error/complete),
???* @param ??type : ???请求方式
*/
function ajax(url, reqObj, type) {
??$.ajax({
?????url: url, ????????????????????????//接口
?????data: reqObj.data, ???????????????//参数
?????type: type || ‘post‘, ????????????//方式
?????dataType: ‘json‘,
?????beforeSend: function(xhr) { ??????//发送请求前(可在此处设置loading...)
????????YDUI.dialog.loading.open();
????????reqObj && reqObj.callback && $.isFunction(reqObj.callback.beforeSend) && reqObj.callback.beforeSend(xhr);
?????},
?????success: function(res) { ?????????//请求成功
reqObj && reqObj.callback && $.isFunction(reqObj.callback.success) && reqObj.callback.success(res);
?????},
?????error: function(res) { ????????????//请求失败
?????????reqObj && reqObj.callback && $.isFunction(reqObj.callback.error) && reqObj.callback.error(res);
?????????YDUI.dialog.toast(res.msg || ‘请求失败‘, null, 2000);
?????},
?????complete: function(res) {
????????YDUI.dialog.loading.close();
????????reqObj && reqObj.callback && $.isFunction(reqObj.callback.complete) && reqObj.callback.complete(res);
?????}
??});
}
简单的ajax封装
原文地址:http://www.cnblogs.com/huangtao5921/p/7503091.html