网页有一个表格和内部表格:
<form method="post" action="{{ url_for('data.dataupdate',username=current_user.name,tablename=ddatatablename) }}">
<table class="table table-striped" id="table1" name="datatable">
<thead>
<tr>
<td bgcolor="#dcdcdc"><input type=checkbox name=select_all value="all" onclick="CheckAll(this.form)"></td>
</tr>
</thead>
{% if ddatas_perpage %}
<tbody name="datas">
{% for item in ddatas_perpage %}
<tr name="table">
<td><input type=checkbox name=select value={{ item.sn }} ></td>
<td class="text-info" name="tabletd" value={{ item[col] }} ><textarea>{{ item[col] }}</textarea></td>
view_function是:
@data.route('/datas/edit/<username>/<tablename>/updatesuccess',methods=['GET','POST'])
def dataupdate(username,tablename):
selected = request.form.getlist("select")
ttt = request.form.getlist('datatable')
tttt = request.form.get('datatable')
ttttt = request.form.getlist('td')
tttttt = request.form.get('tablename')
datas = request.form.get("datas")
tables = request.form.get("table")
tabletds = request.args.get("tabletd")
f = request.form
flash("#######################",f.keys())
for key in f.keys():
flash(key)
for value in f.getlist(key):
flash(key+":"+value)
flash(ttt)
flash(tttt)
flash(ttttt)
flash('############',tttttt)
flash(selected)
flash(datas)
flash(tables)
flash(tabletds)
cases = UserCase.query.filter_by(username=username).all()
session['loginname']=username
if cases is not None:
return render_template('data/usercase.html', ccases=cases)
当我提交表单时,只有复选框可以使用request.form.getlist(“select”)获取值,但表中的其他内容为None。
为什么它没有得到表内容但复选框? 我用user request.form.get或request.args.get得到相同的结果,特别是使用request.form获取键只包含复选框键[select]。 我想获取Web表格内容并更新到数据库表。我如何在Flask中进行操作?
答案 0 :(得分:2)
似乎没有任何其他表单输入,除了复选框您提供了name
属性。如果您发现自己想要从textarea
获取值,请尝试在其上指定名称。