在AJAX请求上显示加载对话框

时间:2011-10-14 14:38:54

标签: javascript jquery ajax grails

在我的Grails应用程序中,我想在AJAX请求正在进行时显示某种可视指示符(可能是模态对话框)。

我将JQuery用于我的所有AJAX请求,目前它们都是使用Grails标签触发的,但我希望我最终需要直接使用JQuery函数(例如$.ajax)。

每次启动/完成AJAX请求时,是否有某种方法可以使此加载对话框显示/消失,而不必在每次进行AJAX调用的地方重复代码?

2 个答案:

答案 0 :(得分:4)

$("#loading_animation").bind({
    ajaxStart: function() { $(this).show(); },
    ajaxStop: function() {  $(this).hide(); }
});

答案 1 :(得分:3)

如果是我,我会切换到明确使用jquery。使用jQuery,您可以配置所有ajax请求将使用的设置

$.ajaxSetup({
   beforeSend: function(xhr, settings) {
     // do mask here
   },
   complete: function(xhr,textStatus){
     // remove mask here
   }

});

我找到了所有这些here