Flask JavaScript 无法打印/记录 jinja2 request.form 变量



大家好,我正试图从烧瓶中获取值,并用javascript打印出来。

当我在表单中使用javascript字符串变量进行打印时,它不会打印任何内容。

var javascript_variable = "key_name";
// output is: request
console.log('request'+"{{request.form['"+javascript_variable+"']}}");

也尝试过

// output is: request
console.log('request'+"{{request.form["+javascript_variable+"]}}");

然而,当我手动键入密钥名称时,它是有效的。

// output is: request key_information
console.log('request'+"{{request.form['key_name']}}");

有人能告诉我我做错了什么吗。

编辑:我不想硬编码keyname,因为key_name是一个动态变化的

我正在尝试访问该变量,这样我就可以填充我的选择选项/复选框/单选框选项,类似于<选项{%if request.form['key_name']=="value"%}选中{%endif%}复选框和单选框相同

为了做到这一点,您可以在flask中的视图中使用flash语句,如下所示,

@blueprint.route('/something.html', methods=['GET', 'POST'])
@login_required
def function():
try:
flash("Submission successful!")
except Exception as e:
traceback.print_exc()
return render_template('something.html')

在jinja中,您可以通过以下方式访问flash变量,

{% if get_flashed_messages() %}
{% for message in get_flashed_messages() %}
<script>window.alert("{{ message }}")</script>
{% endfor %}
{% endif %}

最新更新