Джанго, Аякс установили индикатор выполнения - PullRequest
0 голосов
/ 09 октября 2019

У меня проблема с обновлением html-данных с помощью ajax при загрузке файла с помощью шаблона Django.

Схожий вопрос: link_1 , Link_2 , Link_3

Путь данных:

  1. В моем объекте Progress хранится обновленное значение прогресса

  2. Ajax получает это значение и обновляетhtml текст с тегами каждую секунду

код:

view.py

def progress(request):
    if request.method == 'GET':
        progress_object = Progress.objects.get(id=1)
        data = dict({'value': str(progress_object.value)})
        return JsonResponse(data)

template.html

<center>
<p id="message">bb</p>
</center>

<script>
function fetchdata(){
    $.ajax({
        url:  '/products/progress/',
        type:  'GET',
        dataType:  'json',
        success: function  (data) {
             $( '#message' ).text(data.value);
             console.log(data.value);
             if (data.value == 100) {
                clearInterval(id);
             }
        },
    });
}

$(document).ready(function(){
    id = setInterval(fetchdata,1000);
});
</script>

Результат:

получить значение прогресса работает, но не обновляет текст HTML-тега во время обработки файла [spinning]. Я получаю только последний результат - 100%.

Вопрос:

как обновлять шаблон каждую секунду со значением прогресса?

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