封装jquery的ajax,便于加载等待提示框

先贴上代码。   传入4给参数,保证post,get都能执行,和普通的ajax区别在于添加了设置的timeout。   并在每一次的发送接收请求后执行dialog()方法。   function AjaxRequest(apiUrl, method, param, callback) { $.ajax({ url: apiUrl, type: method, data: param, timeout: 150000, dataType: "JSON", beforeSend: function (XMLHttpRequest) { dialog("加载中...", false); }); }, success: function (data, textStatus) { dialog("加载中...", true); return callback(data); },

 

error: function (XMLHttpRequest, textStatus, errorThrown) { dialog("加载失败!", true); }, complete: function (XMLHttpRequest, status) { if (status == "timeout") { dialog("网络超时!", true); } } }); }  

// dialog()方法中主要是对is的判断,如果是true,那么延迟一秒后隐藏,保证至少提示框能显示出来,false的话就不操作。

function dialog(msg, is) { var d = $(".ajax_box"); d.find(".ajax_dialog").text(msg); is ? setTimeout(function () { d.fadeOut(); }, 1000) : ""; }

 

相关文章