2014-07-23 122 views
1

我正在使用帶有一些AJAX調用的blockUI,並且遇到了它的工作問題。第一次被稱爲一切都按預期工作。當我執行後續的AJAX調用並嘗試調用blockUI時,它不會再次屏蔽我的屏幕。在這兩種情況下寫入控制檯結果函數(opts){install(window,opts); }被返回。認爲這可能是一個z值問題我試過在我的css中添加一個比任何其他z值高的數字的baseZ,但是這並沒有糾正它。其中一個呼叫的簡單實例如下:jQuery blockUI只顯示第一次調用

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

任何意見是非常感謝。

+0

好主意:阻止用戶界面,同時做出無阻塞的請求:) –

回答

0

要使用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);} 
}); 

(異步必須是真實的) 我讀作爲替代,你可以使用:

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

但我更喜歡自己管理它。

+0

感謝您的回覆。我正在使用(document).ajaxStop($。unblockUI);我試圖刪除和$ .unblockUI();在我的AJAX成功,但仍然有同樣的結果。任何其他想法? – chemnteach