【发布时间】:2019-05-20 00:47:55
【问题描述】:
我在模态中使用 FlaskForm。模态设置如下:
<form id="form_id" action="action" method="post" enctype="multipart/form-data">
在页脚内:
<button class="btn btn-primary btn-ok" form="form_id">Save</button>
这意味着当用户点击保存时,它会立即验证并调用“操作”网址。这工作正常,如果其中一个字段未正确验证,它会在该字段上方显示一个漂亮的弹出窗口。
但是,对于一个字段,我一直在尝试设置自定义验证器:
validators=[InputRequired(), validate_function]
但我的问题是使用自动提交功能时没有调用此函数!它似乎只验证现有的验证器,例如“InputRequired()”,但它忽略了我的自定义验证器。
我发现我是否自己验证它,例如当调用操作方法时我这样做:
form = TestForm(obj=request.form)
form.validate():
然后我自己的自定义验证器函数就完美调用了。但我希望在模式表单上点击提交时也能调用它。
我知道我可以拦截提交并在 JQuery 中自己调用验证,然后它可能会工作,但我认为这应该也能工作......有人有答案吗?
【问题讨论】:
标签: jquery validation flask flask-wtforms wtforms