先贴上代码。
传入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) :
???"";
}
封装jquery的ajax,便于加载等待提示框
原文地址:https://www.cnblogs.com/HoredCX/p/10129859.html