Плагин jQuery BlockUI — как установить функцию обратного вызова при возникновении разблокировки

#jquery

#jquery

Вопрос:

я использую плагин jquery BlockUI. я ищу способ, чтобы функция обратного вызова вызывалась после разблокировки.

вот мой код

 $.ajax({
    type: "POST",
    url: "UPSLabelFormUS.aspx/ProcessInfo",
    data: JSON.stringify(DTO),
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (data) {
        if (data.d[0].Message == "SUCCESS") {
            var _images = [data.d[0].LabelImagePath];
            $.each(_images, function (e) {
                $(new Image()).load(function () {
                    ImgPath = data.d[0].LabelImagePath;
                    _TrackNumber = data.d[0].TrackNumber;
                    $('#imgHolder').html("<img src='"   data.d[0].LabelImagePath   "' width='330' height='498' border='0'  />").fadeIn().show('slow');
                    $("#Print").show();
                    $("#Fax").show();
                    $('div#content').unblock();

                }).attr('src', this);
            });
        }
        else {
            $('div#content').unblock();
            alert(data.d[0].Message);
        }
    }
                ,
    error: function (XMLHttpRequest, textStatus, errorThrown) {
        $('div#content').unblock();
        alert(textStatus);
    }
});
  

здесь мне нужно получить уведомление.

 else {
            $('div#content').unblock();
            alert(data.d[0].Message);
        }
  

после разблокировки мне нужно уведомление с помощью обратного вызова, поэтому скажите мне, как использовать функцию обратного вызова с разблокировкой. Спасибо

Ответ №1:

Вы можете указать метод обратного вызова следующим образом:

 $('div#content').unblock({
    onUnblock: function() { alert(data.d[0].Message); }
});
  

Ответ №2:

Вы можете поместить код внутри функции и передать ему обратный вызов следующим образом:

 function someNmae (fn){
    ...
    else {
        $('div#content').unblock();
        alert(data.d[0].Message();

        // Execute Callback Function//
        if (typeof fn == 'function') {
            fn.call(this);
        }
    }
    ....
}

// Run Function w/ Callback //
someName(function(){
    // Callback Code Here //
});
  

Редактировать:

Согласно документации, существует параметр onUnblock, в котором вы можете передать стандартную функцию для запуска при каждой разблокировке следующим образом:

 $.blockUI({
    onUnblock : function(){
        // Callback Function Here //
    }
});
  

Надеюсь, это поможет!

Комментарии:

1. пожалуйста, объясните мне, как это работает ….функция someNmae (fn){ … else { $(‘div#content’).unblock(); alert(data.d[0].Message(); // Выполнить функцию обратного вызова // if (typeof fn == ‘function’) { fn.call(this); } } …. }// Запустить функцию с обратным вызовом // someName(function(){ // Код обратного вызова здесь // });