我想将字典列表从JavaScript + HTML传递到Python + Flask,并将其用作字典列表。
这是我的JavaScript:
List = [];
function AddN(x, y, List, Field,selected = false) {
List.push({
id: ID,
x: x,
y: y,
neighbour: [ID],
selected: selected
});
ID += 1;
document.getElementById(Field).value=List;
}
后来我在HTML表单中有一个隐藏的输入,用于发布列表。
我的Python像这样:
@app.route("/Input.html",methods=["GET","POST"])
def input():
if request.method == "POST":
nA = request.values.getlist("ListA")
其中ListA是HTML形式的上述隐藏输入的ID和名称。通过使用print(),我可以看到我的Python正在获取type:list变量,但是它是空的,并且我确定它在HTML + JS中也不为空。
任何想法?
谢谢。————————————————————————————————————————————编辑:
这是我以前在HTML中发布的代码:
<form>
..........
<input type="hidden" id="ListA">
<input type="submit" id="Submit">
</form>
而且我也尝试过此方法(不与input-hidden方法一起使用):
$.ajax({
url:"/InputCanvas.html",
type:"POST",
data:JSON.stringify(answer)
});
其他变量(浮点数和整数)已正确传递给Python。只有列表为空。
[您的html元素似乎缺少name
属性。因此将其更改为:
<input type="hidden" id="ListA" name="ListA">