标签:style blog http color io os java ar div
为了给用户更好的体验, 前辈们开发了ajax ,
那么如何用好这个ajax 给用户最佳的体验呢 ,
好吧, 步入正题 , 这节文章就是解决在ajax提交后 如何给用户一个好的反馈,假如用户进行操作 , 等半天一点反应也没有, 其实我们程序已经在执行了 。 那样就会给人不好的一种感觉 , 如果我们给他一点反馈效果就不一样了, 明显要好很多。 如下图 !

那么这么一张图 , 在ajax 运行是时候是如果加载进去的呢 ? 当然方法有很多种, 我还是贴上代码吧 。
ajaxLoad.textLoad = function(){ // 文本消息
$(‘.waiting‘).show(); //这里就是我提前准备好的一张gif加载图片,初始化display设为none , 当我ajax一开始运行的时候我就让这张图显示出来, 就有了我们上面的效果图
var id = $(‘.grouplist li.active‘).attr(‘id‘);
var content= $("#content").val();
$.ajax({
type : ‘post‘,
url : ‘groups_data.do‘,
dataType : ‘JSON‘,
timeout : 5000,
data : {"type":"sendtext","group_id":id,"content":content},
success : function(data){
$(‘.waiting‘).hide();
data = JSON.parse(data[‘result‘][‘data‘]);
if(data[‘errcode‘] == 45009){
$.Confirm({html:"您本月群发消息已达到上限!",buttons:{
"确定": function(){
return;
}
}});
}else if(data[‘errcode‘] == 1){
$.Confirm({html:"发达失败!",buttons:{
"确定": function(){
return;
}
}});
}else if(data[‘errcode‘] == 1){
$.Confirm({html:"发达成功!",buttons:{
"确定": function(){
return;
}
}});
loadTextMaterialListL();
}
},
complete : function(xhr,status){ // 在这里我没有用到error 回调 ,为什么呢 ? 因为我们用到了complete , 请求完成后回调函数 (请求成功或失败之后均调用)。
$(‘.waiting‘).hide(); // 当ajax进入到complete回调的时候 , 我们就把刚才加显示的那张加载图片hide就行了 ,
if(status == ‘timeout‘){ //如果请求等于我们设置的超时时间, 那么执行下面的代码 !
$.Confirm({html:"请求超时,请稍后重试!" + status ,buttons:{
"确定": function(){
return;
}
}});
}else if( status == ‘error‘){
$.Confirm({html:"请求出错!" + status ,buttons:{
"确定": function(){
return;
}
}});
}
}
})
};
嗯 , 其实就是这么简单 。 还等什么,亲自去试试吧。
标签:style blog http color io os java ar div
原文地址:http://www.cnblogs.com/bbyz/p/3988658.html