Как реализовать образ jQuery spinner в запросе AJAX
У меня есть запрос jQuery AJAX, который я хочу отобразить gif AJAX spinner во время загрузки запроса, а затем исчезнуть, как только запрос будет успешным, может ли кто-нибудь предложить лучший метод для реализации этого в моем коде jquery ниже:
function updateCart( qty, rowid ){
$.ajax({
type: "POST",
url: "/cart/ajax_update_item",
data: { rowid: rowid, qty: qty },
dataType: 'json',
success: function(data){
render_cart(data);
}
});
}
4 ответов
- получить загрузчик от ajax loader (формат GIF)
- поместите это изображение туда, где вы хотите показать/скрыть.
- до "Аякса", показать это изображение.
- после окончания скрыть изображения
function updateCart( qty, rowid ){
$('.loaderImage').show();
$.ajax({
type: "POST",
url: "/cart/ajax_update_item",
data: { rowid: rowid, qty: qty },
dataType: 'json',
success: function(data){
render_cart(data);
$('.loaderImage').hide();
},
error: function (response) {
//Handle error
$("#progressBar").hide();
}
});
}
var $loading = $('#loadingDiv').hide();
$(document)
.ajaxStart(function () {
$loading.show();
})
.ajaxStop(function () {
$loading.hide();
});
где "#loadingDiv " - это spinner gif, покрывающий часть страницы или всю страницу.
Я делаю это, показывая / скрывая div с gif-изображением. Это работает как шарм:
<script type="text/javascript">
$("#progressBar").corner();
$("#progressBar").show();
jQuery.ajax({
url: "../Nexxus/DriveController.aspx",
type: "GET",
async: true,
contentType: "application/x-www-form-urlencoded",
//data: param,
success: function (response) {
//Manage your response.
//Finished processing, hide the Progress!
$("#progressBar").hide();
},
error: function (response) {
alert(response.responseText);
$("#progressBar").hide();
}
});
</script>
On Preloaders.net Вы можете найти очень открытый код вместе со всеми объяснениями как в чистом JavaScript, так и в форматах JQuery. Вы можете получить изображения загрузчика там тоже