当前位置: 首页 > 面试题库 >

提交后清除有效表格

符功
2023-03-14
问题内容

我要在验证后重置表单。当前,表单在提交并有效后仍会显示以前的数据。基本上,我希望表单在所有字段都干净的情况下返回到原始状态。正确的做法是什么?

@mod.route('/', methods=['GET', 'POST'])
def home():
    form = NewRegistration()

    if form.validate_on_submit():
        #save in db

        flash(gettext(u'Thanks for the registration.'))

    return render_template("users/registration.html", form=form)

问题答案:

问题是,即使数据已验证并已处理,您始终使用传递的任何数据来呈现表单。此外,浏览器会存储上一个请求的状态,因此,如果此时刷新页面,浏览器将重新提交表单。

处理成功的表单请求后,重定向到页面以获取新状态。

@app.route('/register', methods=['GET', 'POST'])
def register():
    form = RegistrationForm()

    if form.validate_on_submit():
        # do stuff with valid form
        # then redirect to "end" the form
        return redirect(url_for('register'))

    # initial get or form didn't validate
    return render_template('register.html', form=form)


 类似资料:
  • 问题内容: 我有一个简单的形式,像这样: 与我的控制器如下: 我想做的是在提交后清除文本输入,因此我只需清除模型值: 除了现在,因为“需要”表单输入,所以在表单输入周围出现了红色边框。这是正确的行为,但不是我在这种情况下想要的……所以,我想清除输入,然后模糊输入元素。这导致我: 现在,我知道从这样的控制器修改DOM在Angular文档中是很陌生的-但是还有更多的Angular方式可以做到这一点吗?

  • 问题内容: 我面临一个相当愚蠢的问题。我正在创建我的第一个React应用程序,遇到一个小问题,提交表单后,我无法清除输入值。尝试谷歌搜索此问题,在这里找到了一些类似的线程,但我无法解决。我不想更改组件/应用程序的状态,而只是将输入的值更改为空字符串。我尝试清除函数中输入的值,但出现错误: “无法设置未定义的属性’值’”。 我的SearchBar组件: 问题答案: 您有一个受控组件,其值由决定。因此

  • 问题内容: 我对Jquery还是很陌生,所以这可能是一个简单的问题,但是有一种方法可以隐藏表单上的提交按钮,直到所有字段都经过验证。 验证将需要是“键入时”解决方案。基本上,我有3个字段- 名字,姓氏和电子邮件。我希望提交按钮保持隐藏状态,直到填写了两个“名称”字段,并且在电子邮件字段中输入了有效的电子邮件地址。 表单本身使用AJAX将表单数据输入数据库。表单位于一个灯箱中,单击提交按钮后,该灯箱

  • 我正在尝试为我的登录构建一个提交表单,但我不知道为什么这个操作不起作用。有什么想法吗? > 列表项jquery $(“Form”).Submit(函数(e){e.PreventDefault();switch(this.id){case“login-form”:var$lg_username=$('#login_username').val();var$lg_password=$('#login_

  • 问题内容: 最近,到目前为止,我已经跳入angularjs及其精彩。我一直在通过$ http服务发送AJAX请求。今天,我震惊地发现没有简单的方法可以做到(据我所知)。通过谷歌和SO进行搜索使我无所适从复杂的复杂解决方案。 尽管我现在最终使用了JQuery,但对于像JQuery ajax这样能够发送表单的东西是否真的可用感到好奇。这是简单的JQuery代码,用于说明正在讨论的内容 问题答案: 有一

  • 我有一个表单,其中有一些输入字段。其中一些是必填字段,一些是电子邮件字段。 我使用HTML5必需属性的必需字段和type="email"属性的电子邮件字段。 我的问题是在点击提交按钮后,我必须为所有无效字段显示红色边框。 这是我的表格: 还有我的保存功能。 现在,当我点击保存按钮而不填写任何内容时,所有的错误(跨度)都会显示出来。但是我想显示所有无效字段的红色边框。 我审理了下列案件: 但是当用户