python - 使用django提交表单后如何使输入表单中的值不消失
问题描述
我有一个可变尺寸的 html 表格,其中每个单元格都是
<input type = "number">
在用户填写完每个单元格并按下提交后,一些计算的结果应该打印在h2
标签中。正如预测的那样,每次用户按下提交时,表中写入的内容都会被删除。是否有可能在某种程度上否定这一点,以便在用户按下提交后他得到结果输出但他在表格中的输入保持在原来的位置?这是所有这一切都发生的模板的 html:
{% extends "base.html" %}
{% block content %}
<h2> Dimensions: {{ f_number }} X {{ s_number }} </h2>
<form method = "post" action="/calculated/">{% csrf_token %}
<table style = "border: 1px solid black;" border = 1>
{% for i in range_first %}
<tr>
{% for j in range_second %}
<td> <input type = "number" name = "{{ i }}{{ j }}"> </td>
{% endfor %}
</tr>
{% endfor %}
</table>
<input type = "Submit" value = "Calculate" name = "calc">
{% if result %}
<h2> The result is: {{ result }}. </h2>
{% endif %}
</form>
{% endblock content %}
这是我的视图功能:
def calculate(request):
if request.method == 'POST':
content = request.POST.dict()
stuff = calculator.MatrixCalculator(content)
dimensions = stuff.dimensions_to_normal_form()
array_numbers = stuff.numbers_to_normal_form()
range_first = range(dimensions[0] + 1)
range_second = range(dimensions[1] + 1)
result = stuff.Rank(array_numbers, dimensions)
return render(request, 'enter_number.html', {'result': result,
'f_number': dimensions[0] + 1, 's_number': dimensions[1] + 1,
'range_first': range_first, 'range_second': range_second})
解决方案
推荐阅读
- c - 如何从十六进制转换为 Unicode 代码点?
- r - 如何在不使用 R 中的 BiodiversityR 包的情况下使用 Bray-Curtis 指数在 PCA 中添加影响因素?
- ruby-on-rails - 如果下一个操作是在您希望用户去的地方以外的任何地方,那么运行某些条件的最佳方法是什么?
- javascript - Ajax 在 Chrome 或 IE 中不起作用,但在 FireFox 中起作用
- python - 缺少一个必需的位置参数
- r - 将矩阵列表除以不同的矩阵集
- powershell - Powershell:比较两个数组,查找缺失项和更改的值
- r - rmarkdown PDF 自定义字体
- excel - 在另一个工作簿中查找值并复制/粘贴一系列单元格
- python - 在python中选择特定的日历日期