2015-12-26 5 views
0

Я хочу сделать страницу, которая появляется от 1 до 10, но без перезагрузки страницы и иметь одну секунду между каждым числом.Django: сделать страницу без перезагрузки

Я читал и, кажется, нуждаюсь в ajax (я новичок в этом), но используя функции, которые звучат сложнее, я просто хочу, чтобы раздел на моей странице с <div> показывал эти цифры от 1 до 10 без перезагрузки веб-страницу.

Любой справочник или базовый пример мне очень помогли бы!

Спасибо!

+0

использование AJAX, чтобы сделать это. –

+1

Является ли Django требованием? Это похоже на чистый Javascript. –

+1

Здесь нет необходимости в Ajax, достаточно простого счетчика JS. Ничего общего с Django. –

ответ

-1

В случае, если вы ищете что-то, что может помочь вам заменить значения в вашем HTML новыми данными из внутреннего блока, вот как вы можете это сделать.

xyz_template.html

<html> 
    <head></head> 
    <body> 
     <div class="container"> 
      {{number}} 
     </div> 
    </body> 
</html> 

pqr.js

var current_number = $(".container").val(); 
    var c = getCookie('csrftoken'); 
    (function pullnewnumber(){ 
     $.ajax({ 
      context: this, 
      type: 'POST', 
      dataType: 'json', 
      url: '/fetchnewnumber/', 
      data: { 
       csrfmiddlewaretoken: c, 
       input: current_number 
      }, 
      success: function(response) { 
       var new_number = response.newNumber; 
       $(".container").html(new_number); 
      }, 
      complete: function(){ 
      setTimeout(pullnewnumber, 1000); 
      } 
     }); 
    }); 

views.py

def sampleView(request): 
    if request.POST: 
     if request.is_ajax(): 
      input_num = request.POST.get("input", "") 
      if input_num < 10: 
      num = input_num + 1 
      json_object = {'responseNum': num} 
      return JsonResponse(json_object) 
    else: 
     num = 1 
     return render_to_response('xyz_template.html', 
           {'newNumber': num},context_instance=RequestContext(request)) 
+0

Привет, благодарит за ответ У меня есть некоторые сомнения, 1. В html мне нужно включить статические файлы на голову, в данном случае js, правильно? 2. Файл pqr.js устанавливает только значение в контейнере? Еще раз спасибо! – JCH97

+0

Да! вам нужно включить staticfiles, а JS делает ajax-вызов для URL-адреса и получает новое значение числа, которое будет установлено при успешном завершении. –

+0

Это массивный избыток; OP просто хочет отобразить простой счетчик. –