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

Posted horedcx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了封装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) :
"";
}

 

以上是关于封装jquery的ajax,便于加载等待提示框的主要内容,如果未能解决你的问题,请参考以下文章

如何给JQUERY+AJAX加上加载等待效果

Qt之等待提示框(QPropertyAnimation)

页面大量的节点Dtree一次加载很慢,多次弹出提示框,需点击否多次,才加载完,怎么用ajax异步加载节点!

原生js实现ajax封装

原生js实现ajax封装

原生js实现ajax封装