Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
4 / 4 / 3
Регистрация: 05.05.2010
Сообщений: 45
1

Прогресс выполнения функции AJAX и время выполнения

20.08.2014, 09:04. Просмотров 2700. Ответов 2
Метки нет (Все метки)

Здравствуйте. Как ни странно не нашел ответа на решение своей проблемы.
Есть функция, которая обрабатывается AJAX-ом на стороне сервера. Выполняется она достаточно долго и состоит из нескольких запросов и циклов.

Нужно чтобы на стороне клиента после выполнения каждого этапа этой функцией, увеличивалась значение прогрессбара. Помимо этого, в конце нужно вывести общее время выполнения этой функции (подсчитывал путем microtime(true) в начале и в конце).

1. Способа реализации поэтапного вывода результата функцией AJAX я не обнаружил - весь вывод результата происходит после завершения функции.
2. Пробовал после выполнения каждого этапа записывать прогресс выполнения в процентах в сессию, создать дополнительную функцию, которая через определенный отрезок времени считывала бы значение сессии и это значение обновляла в прогрессбаре. Но вся проблема в том, что две функции параллельно выполнятся не хотят.

Кто может предложить решение этой проблемы. Проблема то на мой взгляд распространенная.
Спасибо.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.08.2014, 09:04
Ответы с готовыми решениями:

Вставка картинки во время выполнения AJAX
Всем привет. Сложилась такая ситуация: передаю аяксом значение скрипту, и пока скрипт выполняется...

Время выполнения функции
Доброго времени суток, пришла идея в голову, но при реализации возник вопрос. Допустим я написал...

Установить паузу во время выполнения функции
Доброго времени суток. Ребята помогите разобраться, а то чего-то я уже запутался... <script...

Результат от выполнения ajax
Доброе время суток! вообщем проблема вот такая. Есть такой вот код: var m_key_reg; $.ajax({ ...

2
4 / 4 / 3
Регистрация: 05.05.2010
Сообщений: 45
21.08.2014, 13:32  [ТС] 2
После 2-х дней поиска нашел решение в этой статье:

http://aleksey-komov.blogspot.... ssbar.html
1
3 / 3 / 11
Регистрация: 17.01.2013
Сообщений: 354
03.08.2015, 21:26 3
Лучший ответ Сообщение было отмечено seregaponarin как решение

Решение

Подскажите, пожалуйста.
Я смотрю на представленный выше код по ссылке и не могу понять, как мне применить эти знания для своего варианта. У меня так обрабатывается событие на нажатие кнопки:
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    $( "#start" )
    .button()
    .click(function() {
        $("div.status").text("Выполняется...");
        $data = $("form#cfg").serialize();
        $.ajax({
            type: "POST",
            url: "index.php",
            data: { i:2, cfg:$data },
            success: function(html) {
                $("div#result").html(html);
                $("div.status").text("Операция завершена успешно.");
            },
        });
    });
Но хочется в div.status иметь не просто надпись, пока выполняется процесс, а предусмотреть какую-то анимацию. Например, многоточие в конце изменять, то есть сначала . потом .. потом ... и снова по кругу. Также скрипт может выполняться несколько минут, неплохо было бы выводить какие-то уточняющие сообщения в div.status. К примеру, "выполнен первый блок", "выполнен второй блок" и т. д. Как такое сделать ?
Ещё мне не нравится, что даже если в скрипте произошли какие-то ошибки, всё равно в статус выводится "Операция завершена успешно.". Как сделать вывод сообщений об ошибках в скрипте ?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.08.2015, 21:26

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

Дождаться выполнения AJAX запроса и вернуть значение
Делаю расширение для хрома. Мне нужно из моего файла content отправить сообщение на background и...

Время выполнения $.post
здраствуйте, хотел бы посоветуватся с Вами. можно ли при помощи js или jQuery отловить сколько...

Передать результат успешного выполнения Ajax на jQuery в php переменную
Пожалуй одна из самых тривиальных задач для профи и одна из самых сложных для понимания для...

Узнать время выполнения кода?
Есть необходимость узнать время выполнения некоторых операций. Для этого использую простую функцию:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.