سؤال

ولقد نفذت UI كتلة لأن هذا الطلب يمكن أن تأخذ القليل، والوقت عندما يبدأ طلب اياكس كل شيء يعمل كما هو متوقع.

ولكن عندما يظهر التشطيبات طلب اياكس وmsgbox، واجهة المستخدم لا افراج!

وأي أفكار؟

وأنا باستخدام 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();
            }
        }

    });
}
هل كانت مفيدة؟

المحلول

وكما قال هنا ، وذلك باستخدام

<meta http-equiv="X-UA-Compatible" content="IE=7" />

ويبدو أن حل المشكلة. لم أحصل على أي وسيلة أخرى لايجاد حل لها في مشروع بلدي.

نصائح أخرى

$.unblockUI();
$(".blockUI").fadeOut("slow"); 

وكان لي نفس، وحلها باستخدام الأقواس في الجملة unblockUI.

// 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 ميلتون

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top