【发布时间】:2018-05-21 19:05:58
【问题描述】:
我有以下 WTForms 类:
from flask_wtf import FlaskForm
from wtforms import SelectField
class MonitorLevel(FlaskForm):
monitor = SelectField('Monitor', choices=MONITOR_CHOICES)
可以使用以下 jinja2-code 渲染:
{{ form.monitor() }}
但是,我想在值更改时执行一个 JS 脚本,所以我添加了以下内容:
{{ form.monitor(**{'onchange': 'sendForm();'}) }}
这很好用,但现在我想传递一个变量(它是一个字符串)作为参数:
{{ form.monitor(**{'onchange': 'sendForm("{}");'.format(variable)}) }}
但是,这呈现为:
<select id="monitor" name="monitor" onchange="sendForm("name");">...</select>
所以,我尝试使用safe 函数来逃避它,但这不起作用。我也尝试通过:\" 来转义引号,但这也不起作用。
在字典的值中添加引号有什么想法吗?
提前致谢,
【问题讨论】:
-
什么会给
{{ form.monitor(**{'onchange': 'sendForm("");'}) }}?