jqgrid - 覆盖ajax默认选项时触发loading ...消息

时间:2012-01-11 23:06:01

标签: jquery jqgrid

当我向.jqgrid.defaults提供ajaxGridOptions时,没有显示loading ...消息。我需要有这个功能来处理我的ajax请求的会话超时。在这种情况下如何触发loading ...消息,并在完成请求时隐藏它...

$.extend($.jgrid.defaults, {
    //altRows : true
    ajaxGridOptions : {
        beforeSend: function(xhr) {
            setAjaxHeader(xhr);
        },
        complete: function(xhr) {
            handleAjaxSessionTimeOuts(xhr);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            handleAjaxExceptions(jqXHR, textStatus, errorThrown);
        }
    }
});

我认为我们可以做类似$(“。loading”)的事情.css(“display”,“block”);但我不确定哪个地方适合做。感谢...

1 个答案:

答案 0 :(得分:1)

我能够通过在beforeSend中设置.loading类并将其隐藏在complete方法中来修复它。如果有人有更好的解决方案,请告诉我。感谢...

$.extend($.jgrid.defaults, {
    //altRows : true
    ajaxGridOptions : {
        beforeSend: function(xhr) {
            setAjaxHeader(xhr);
            $(".loading").css("display", "block");
        },
        complete: function(xhr) {
            handleAjaxSessionTimeOuts(xhr);
            $(".loading").css("display", "none");
        },
        error: function(jqXHR, textStatus, errorThrown) {
            handleAjaxExceptions(jqXHR, textStatus, errorThrown);
        }
    }
});