/** * 封装的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...) 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); }, complete: function(res) { reqObj && reqObj.callback && $.isFunction(reqObj.callback.complete) && reqObj.callback.complete(res); } }); }