Javascript 如何将大量HTML表单输入发送到Flask?
我有一个HTML表单,用户可以在其中添加无限量的一对文本字段。我使用了一些Javascript,这样每个新的文本输入都有一个Div,它周围有一个唯一的ID,分别标识每个文本字段。像这样:Javascript 如何将大量HTML表单输入发送到Flask?,javascript,python,html,forms,flask,Javascript,Python,Html,Forms,Flask,我有一个HTML表单,用户可以在其中添加无限量的一对文本字段。我使用了一些Javascript,这样每个新的文本输入都有一个Div,它周围有一个唯一的ID,分别标识每个文本字段。像这样: <div id="1"> <textarea name="firstTextArea"></textarea> <textarea name="secondTextArea"></textarea> </div> <div id="
<div id="1">
<textarea name="firstTextArea"></textarea>
<textarea name="secondTextArea"></textarea>
</div>
<div id="2">
<textarea name="firstTextArea"></textarea>
<textarea name="secondTextArea"></textarea>
</div>
<div id="3">
<textarea name="firstTextArea"></textarea>
<textarea name="secondTextArea"></textarea>
</div>
等等
我如何将表格中的数据输入烧瓶?如果有固定数量的输入,这将很容易,但输入的数量将根据用户的选择而变化
我想到的一种方法是计算HTML表单的输入字段数,尽管我不确定如何使用Javascript计算输入字段数,然后将其与文本字段数据一起发送/请求到Flask
解决这个问题的最佳方法是什么?我找到了一种使用以下代码解决此问题的方法:
firstTextArea = []
secondTextArea = []
x = 1
while True:
try:
firstTextArea.append(request.form['firstTextArea' + str(x)])
secondTextArea.append(request.form['secondTextArea' + str(x)])
except:
break
x += 1
我没有对div进行命名,而是对每个textarea进行了唯一命名,以便在上面的代码中识别它们。我找到了一种使用以下代码解决此问题的方法:
firstTextArea = []
secondTextArea = []
x = 1
while True:
try:
firstTextArea.append(request.form['firstTextArea' + str(x)])
secondTextArea.append(request.form['secondTextArea' + str(x)])
except:
break
x += 1
我没有给div命名,而是对每个textarea进行了唯一命名,这样我就可以在上面的代码中识别它们。你是在问如何获得相同名称的多个参数吗?请参见此处的答案:。您的参数对应该以相同的方式排序,因此firstTextArea[0]应该对应于secondTextArea[0]@Spencer,但我如何为每个textarea执行该操作,并知道何时停止在最后一个textarea?当您检查参数值时,您将获得一个数组。您只需在它们之间循环,直到结束。@Spencer我如何才能让Flask知道何时结束?您只是问如何获得相同名称的多个参数?请参见此处的答案:。您的参数对应该以相同的方式排序,因此firstTextArea[0]应该对应于secondTextArea[0]@Spencer,但我如何为每个textarea执行该操作,并知道何时停止在最后一个textarea?当您检查参数值时,您将获得一个数组。您只需在它们之间循环,直到结束。@Spencer我如何才能让Flask知道何时结束?您只是问如何获得相同名称的多个参数?请参见此处的答案:。您的参数对应该以相同的方式排序,因此firstTextArea[0]应该对应于secondTextArea[0]@Spencer,但我如何为每个textarea执行该操作,并知道何时停止在最后一个textarea?当您检查参数值时,您将获得一个数组。你只需在它们之间循环,直到你到达终点。@Spencer我怎样才能让Flask知道何时到达终点?