Как показать ajax загрузочный gif только для конкретного запроса? - PullRequest
1 голос
/ 22 апреля 2010

Как вы показываете ajax gif только для конкретного запроса? Например, моя страница вызывает веб-сервис каждые 30 секунд в фоновом режиме, и я не хочу показывать GIF во время этого обратного вызова. С другой стороны, я хочу показать gif, когда я делаю ручные запросы ajax.

Я использую jQuery.

edit: я не настроил глобальный обработчик, как показано здесь http://api.jquery.com/ajaxStart/,, просто подключив его к событию .ajaxStart. Но я не хочу, чтобы показать / скрыть GIF вручную на каждый запрос тоже. Мне нужно общее решение.

Ответы [ 3 ]

2 голосов
/ 22 апреля 2010
$('#manualRefresh').click(function(){
    $('#myContainer').html('<img src="my-ajax-gif.gif">');
    $.get( ..., function(data){ ('#myContainer').html(data) });
});

Как это?

1 голос
/ 22 апреля 2010

Пожалуйста, попробуйте это:

$('#save').click(function(){
    $('#ShowLoading').show();
    $.ajax( ..., success:function(data){....$('#ShowLoading').hide();}, 
          error:function(){....$('#ShowLoading').hide();});
});

НТН

0 голосов
/ 23 апреля 2010

Я использую плагин BlockUI , это действительно очень просто. Это простая функция-обертка, которую я написал для некоторого демонстрационного кода:

function wjBlockUI(msg) {

var defaultMsg = '<img src="../images/activity.gif" />';

if (null !== msg) {
    defaultMsg = msg
}

$.blockUI({ overlayCSS: { backgroundColor: '#aaa' }, message: defaultMsg });

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...