您的位置:首页 > 其它

Ajax请求数据时添加遮罩

2018-12-28 11:56 106 查看

1,Ajax请求时添加遮罩

项目常常会遇到Ajax发送数据,这个过程有一定的时间等待,在这个等待时间我们可以添加一个遮罩,让产品更具有人性化

特别注意: ajax 如果采用  sync:false 那么遮罩不能够显示, 不可以是同步的,这是一个致命的弊端

2,Ajax发送异步请求 //beforeSend方法ajax发送请求获取数据前   complete方法是请求成功发送

[code]$.ajax({
type: "post",
url: "undertakerRecordingController.do?doUndertakerCall",
cache:false,
data :params,
beforeSend: function () {
load();
},
complete: function () {
disLoad();
},
success: function(data){
var d = $.parseJSON(data);
console.log(d);
var msg = d.msg;
if(d.success){
tip(msg);
//按钮变灰
// $('#callButton').attr('disabled',"true");
}else{
tip(msg);
//$('#callButton').attr('disabled',"false");
}
},
error: function (errorData) {
console.log('error:'+errorData);
}
});

3,load,diabload方法

[code]function load() {
var fromobj=$("#formobj");
$("<div class=\"datagrid-mask\"></div>").css({
display: "block",
width: "100%",
height: fromobj.height()
}).appendTo(fromobj);
$("<div class=\"datagrid-mask-msg\"></div>").html("正在拨打中,请稍候。。。").appendTo(fromobj).css({
display: "block",
left: (fromobj.outerWidth(true) - 190) / 2,
top: (fromobj.height() - 45) / 2
});
}
//取消加载层
function disLoad() {
$(".datagrid-mask").remove();
$(".datagrid-mask-msg").remove();

}

4,效果展示 遮罩成功显示

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: