0
フォームが送信された後に(div内の)フォームの入力を出力する方法を探しています。多くの研究の後、私は解決策を見つけることができません。私はAJAXを使う必要があると思いますが、確かではありません。これを実現する適切なDjangoの方法はありますか、AJAXで作業する必要はありますか?余分なモデルフィールドを使って入力フォームデータを出力する方法Django
AJAXでこれをどうしますか?
<script>
var xhr = new XMLHttpRequest();
xhr.open('GET', '???');
xhr.onreadystatechange = function() {
if (xhr.readyState === 4) {
document.getElementById('ajax').innerHTML = xhr.responseText;
}
};
function sendAJAX() {
xhr.send();
}
</script>
views.py
def scan_product_view(request):
if request.method == 'POST':
form = forms.ScanProductForm(request.POST or None)
if form.is_valid():
barcode_input = form.cleaned_data.get("barcode_input")
amount_input = form.cleaned_data.get("amount_input")
p = AddProduct.objects.get(barcode=barcode_input)
p.sold = F("sold") + amount_input
p.stock_amount = F("stock_amount") - amount_input
p.save()
messages.success(request, '%s was successfully scanned' %p.title)
return HttpResponseRedirect('/scan/')
else:
form = forms.ScanProductForm()
return render(request, 'scanapp/barscan.html', {'form': form})
テンプレートHTML
{% block content %}
<div class="scan-form-master">
<form method="POST" action="">
{% csrf_token %}
<div class="scan-con">
<div>
<div class="scan-form">
{{ form }}
<input type="submit" class="btn btn-primary" value="Add">
</div>
<div class="conf-btn">
<div id="load" onclick="sendAJAX()">
<p>* I want to show the input of the above field input here after the client hit the Add button.</p>
</div>
<p><input type="submit" class="btn btn-danger" value="Print PDF">
<input type="submit" class="btn btn-success" value="End session"></p>
</div>
</div>
</div>
</form>
</div>
{% endblock %}
ありがとうございます!私はここからそれを理解しようとします:-) – sandermander