jQuery blockUI 仅在第一次调用时显示



我正在使用blockUI与一些AJAX调用,我遇到的问题与它的工作。第一次被称为一切都如预期的那样运行。当我执行后续的AJAX调用并尝试调用blockUI时,它不会再次阻塞我的屏幕。在这两种情况下,写入控制台都会导致function (opts) {install(window, opts);}被返回。我认为这可能是一个z值问题,我试着在我的css中添加一个高于任何其他z值的数字,但这并没有纠正它。下面是其中一个调用的简单实例:

$(document).ready(function() {
    $(document).on('click',".defect",function() {
        $.blockUI({ message: "<h4>Getting images ...</h4><img src='img/wait.gif'/>"});
    })
})

要使用blockui,必须在ajax调用(回调)之后"取消阻塞"blockui,如下所示:

$.blockUI({ message: "<h1><img src='imgs/ajax-loader2.gif' > zzzzz...</h1>" }); 
$.ajax({ url: myurl.php, type: 'POST',async:true,  dataType: 'html', 
    success: function(msg){
        $.unblockUI(); 
    },error: function (xhr, ajaxOptions, thrownError) {alert("ERROR:" + xhr.responseText);}
});

(async必须为真)你可以使用

$(document).ajaxStart($.blockUI).ajaxStop($.unblockUI);

但我更喜欢自己管理它。

相关内容

  • 没有找到相关文章

最新更新