отображение загрузчика gif при получении запроса ajax - PullRequest
0 голосов
/ 30 сентября 2011

У нас есть некоторый код, который мы используем, так как пользователь набирает его через ajax, результаты поиска.

У меня проблема в том, что я не хочу кнопку отправки, мы хотим, чтобы код отображал загрузчик gif (в стиле пипсов в стиле FaceBook), пока содержимое загружается. Когда есть успех, спрячьте загрузчик.

Элемент ввода:

<input name="suburbs"  autocomplete="off" class="suburbsreviews" type="text" id="terms" size="50" onkeyup="getScriptPage('show_results','terms','1')" onblur="if ( this.value == '' ) this.value = this.defaultValue" onfocus="if ( this.value == this.defaultValue ) this.value = ''" <?if ($_GET['terms']){?>value="<?=$_GET['terms'];?>"<?}else{?>value="search"<?}?> />

Я думал, что добавлю диапазон загрузки, который я могу поместить в элемент ввода абсолютно, используя:

<span class="loader">Loading...</span>

Плюс, я думал, что этот код может работать, отображая пункты загрузки:

$.loader({
onAjax: true,
align: 'center',
img: 'images/facebook/pip.gif',
mask: true
});

Это не работает. Есть идеи почему? Я пользуюсь последней jQuery.

1 Ответ

2 голосов
/ 30 сентября 2011

Я думаю, что вы слишком усложняете вещи, вот функция, которую я использую:

function setAreaTree(){
$('#projecthierarchy').html('<center><br><br><br><br><img src="img/loading_eeeeee.gif"></center>');
$.ajax({
    url: "sitemanager/sitemanager_ajax.php",
    data: {
        action:'getsidebar',
        pid:pid,
        aid:curaid,
        openareas:openareabars
    },
    success: function(data) { 
        $('#projecthierarchy').html(data)
    }
}); 

}

Так что у меня просто один div с id = "projecthierarchy".Сразу же, когда событие вызывается, выскакивает gif загрузчика, затем, когда вызов ajax успешно возвращается, он помещает разделители, которые разделяются с содержимым.

Это работает для вас?

...