如何仅针对特定请求显示ajax gif? 例如,我的页面在后台每30秒调用一次Web服务,我不想在回调期间显示gif。另一方面,我希望在制作手动ajax请求时显示gif。
我正在使用jQuery。
编辑:我没有设置全局处理程序,如此处http://api.jquery.com/ajaxStart/所示,只是附加到.ajaxStart事件。但我也不想在每个请求上手动显示/隐藏gif。我需要一些通用的解决方案。
答案 0 :(得分:2)
$('#manualRefresh').click(function(){
$('#myContainer').html('<img src="my-ajax-gif.gif">');
$.get( ..., function(data){ ('#myContainer').html(data) });
});
喜欢那个?
答案 1 :(得分:1)
请试试这个:
$('#save').click(function(){
$('#ShowLoading').show();
$.ajax( ..., success:function(data){....$('#ShowLoading').hide();},
error:function(){....$('#ShowLoading').hide();});
});
HTH
答案 2 :(得分:0)
我使用BlockUI plugin,让它变得非常简单。这是我为一些演示代码编写的一个简单的包装函数:
function wjBlockUI(msg) {
var defaultMsg = '<img src="../images/activity.gif" />';
if (null !== msg) {
defaultMsg = msg
}
$.blockUI({ overlayCSS: { backgroundColor: '#aaa' }, message: defaultMsg });
}