Javascript: Ввод значения в полях и отображение значения во всплывающем окне
У меня есть регистрационная форма. После заполнения формы во всплывающем окне отобразится номер ссылки. Напоминание для пользователя, которое он должен использовать для входа в систему.
register.html
<div>Reference No.<input type="text" name="refno" value="{{ refno }}" readonly></div>
<div>Name<input type="text" name="name"></div>
...
<button type="submit" id="getInputValue()" class="btn">Submit</button>
это мой скрипт
function getInputValue() {
let textElement = document.getElementById('refno').value;
alert(textElement);
views.py
if request.method == 'GET':
random_chars = ''.join(random.choices(string.ascii_uppercase + string.digits, k=8))
refno = f"{random_chars}"
return render(request, 'registration_form.html', {"refno": refno})
if request.method == 'POST':
refno = request.POST.get('refno')
name = request.POST.get('name')
...
Applicant.objects.create(refno=refno, name=name, ...)
return redirect(/user_login/)
После нажатия кнопки msg должен отобразить номер ссылки, прежде чем перейти к форме входа. Поэтому я немного запутался, как показать всплывающее окно перед входом в систему. Если я напишу return render(request, 'registration_form.html')
, то он просто вернется к форме. С этим кодом, который у меня есть, он даже не показывает всплывающее окно. Заранее спасибо.
Вы можете показать номер ссылки на странице входа в систему. Для этого используйте django messages
.
from django import messages
if request.method == 'POST':
refno = request.POST.get('refno')
name = request.POST.get('name')
...
Applicant.objects.create(refno=refno, name=name, ...)
messages.success(request, f'{refno}')
return redirect(/user_login/)
Для показа сообщений в шаблоне с всплывающим окном:
{% if messages %}
{% for message in messages %}
<div>Reference No.<input type="text" name="refno" value="{{ message }}" readonly></div>
<div>Name<input type="text" name="name"></div>
...
<button type="submit" id="getInputValue()" class="btn">Submit</button>
{% endfor %}
{% endif %}