问题
I've implemented block UI as this request can take a little, time when the ajax request starts everything works as expected.
But when the ajax request finishes and the msgbox is shown, the UI doesn't unblock!
Any ideas?
I'm using IE8.
$().ajaxStart($.blockUI);
$().ajaxStop($.unblockUI);
function ChangeCompanyState(companyId, state) {
var parameters = "{companyId:" + companyId + ",state:\"" + state + "\"}";
$.ajax({
type: "POST",
url: "Ajax/AjaxFragments.aspx/ChangeCompanyState",
data: parameters,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
if (msg.d.length > 1) {
alert(msg.d);
$.unblockUI();
}
else {
//Theres no message to process success.
window.location.reload();
}
}
});
}
回答1:
As told here, using
<meta http-equiv="X-UA-Compatible" content="IE=7" />
seems to fix the problem. I didn't get any other way to solve it in my own project.
回答2:
$.unblockUI();
$(".blockUI").fadeOut("slow");
回答3:
I had the same, and resolved by using parentesis in unbluckUI sentence.
// block when ajax activity starts
function beginRequestHandler(sender, args) {
$.blockUI({ message: '<h1><img src="loading.gif" /> Just a moment...</h1>' });
}
// unblock when ajax activity stops
function endRequestHandler(sender, args) {
$.unblockUI(); // previously was $.unblockUI;
}
HTH Milton
来源:https://stackoverflow.com/questions/1443079/blockui-works-but-unblockui-isnt