Как отобразить результат на текущей странице? Джанго, Аякс - PullRequest
1 голос
/ 04 ноября 2019

На главной странице у меня есть текстовое поле. Когда я набираю текст в нем, после нажатия кнопки я хочу отобразить этот текст ниже.

С помощью ajax я получаю введенный текст и передаю его в views.py.

При рендерингенужный результат отображается на / localhost: 8000 / vk_u /

Как отобразить результат на текущей странице (localhost: 8000 /)?

Спасибо

//forms.py
from django import forms
from .models import *

class VK_LINK_Form(forms.Form):
    enter_link = forms.CharField(widget = forms.TextInput(attrs={'id':'link_vk_enter'}))
//urls.py
from django.urls import path, include
from . import views
from django.http import HttpResponse

urlpatterns = [
    path('', views.index, name = 'index'),
    path('vk_u/', views.vk_u, name = 'vk_u'),
]
//js
$(document).on('submit','#vkht_form', function(e){
  e.preventDefault();
  var link_post_input = $(document.getElementById("link_vk_enter")).val()
    $.ajax({
      type: 'POST',
      url: '/vk_u/',
      data:{
        link_post_input: link_post_input,
        csrfmiddlewaretoken:$('input[name=csrfmiddlewaretoken]').val()
      },
    });
});
]
//views.py
def vk_u(request):
    link_post_input = request.POST.get('link_post_input')
    return render(request, "mainApp/homePage.html", {"link_post_input": link_post_input,})
<!-- html -->
<body>
  <div>
    <form action="" method="GET" id="vkht_form">
      {% csrf_token %}
      {{ form }}
      text: {{ text_post_input }}
      <input type="submit" value="CLICK">
    </form>
  </div>
</body>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...