首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

onclick='check();return false‘in html会导致flask_wtf不从表单中提取任何值

在HTML中,onclick='check();return false;'是一个事件处理程序,它会在用户点击相关元素时触发check()函数,并且通过return false;阻止默认的表单提交行为。

在Flask框架中,使用flask_wtf库来处理表单。然而,当在HTML中使用onclick='check();return false;'时,会导致flask_wtf无法从表单中提取任何值。这是因为return false;会阻止表单的提交,从而导致flask_wtf无法获取表单数据。

为了解决这个问题,可以考虑以下几点:

  1. 移除onclick='check();return false;':如果不需要特定的事件处理程序,可以直接移除该属性,让表单正常提交。
  2. 使用onsubmit事件:可以将事件处理程序移至表单的onsubmit事件上,而不是在点击事件上。例如,可以将onclick='check();return false;'改为onsubmit='return check();',并在check()函数中执行必要的验证操作。这样,当用户点击提交按钮时,会触发check()函数进行验证,如果验证通过,则表单会正常提交。
  3. 使用Flask-WTF的验证功能:Flask-WTF提供了强大的表单验证功能,可以在后端对表单数据进行验证。可以在Flask视图函数中使用form.validate_on_submit()来验证表单数据,并根据验证结果进行相应的处理。

总结起来,onclick='check();return false;'会导致flask_wtf无法从表单中提取任何值。为了解决这个问题,可以移除该属性、使用onsubmit事件或者利用Flask-WTF的验证功能来处理表单数据。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Flask表单之WTForms和flask-wtf

每次我们在建立表单所创建的类都是继承与flask_wtf的FlaskForm,而FlaskForm是继承WTFormsforms。..., 为True 和 False RadioField 一组单选框 SelectField 下拉列表 SelectMultipleField 下拉列表, 可选择多个 FileField 文件上传字段...更多的验证器将会在未来的表单接触到。 表单模板 下一步是将表单添加到HTML模板以便渲染到网页上。 令人高兴的是在LoginForm类定义的字段支持自渲染为HTML元素,所以这个任务相当简单。...对于保护表单,你需要做的所有事情就是在模板包括这个隐藏的字段,并在Flask配置定义SECRET_KEY变量,Flask-WTF完成剩下的工作。...如果你以前编写过HTML Web表单,那么你会发现一个奇怪的现象——在此模板没有HTML表单元素,这是因为表单的字段对象的在渲染时会自动转化为HTML元素。

4K20

Flask web表单 Flask-WTF表单扩展

Web表单 web表单是web应用程序的基本功能。 它是HTML页面负责数据采集的部件。表单有三个部分组成:表单标签、表单域、表单按钮。...为True和False RadioField 一组单选框 SelectField 下拉列表 SelectMultipleField 下拉列表,可选择多个 FileField 文本上传字段 SubmitField...比较两个字段的,常用于比较两次密码输入 Length 验证输入的字符串长度 NumberRange 验证输入的在数字范围内 URL 验证URL AnyOf 验证输入在可选列表 NoneOf 验证输入不在可选列表...SECRET_KEY用来生成加密令牌,当CSRF激活的时候,该设置根据设置的密匙生成加密令牌。 直接在HTML页面写form表单的示例 1....# 如果form的数据完全满足所有的验证器,则返回真,否则返回假 if form.validate_on_submit(): # 表示验证合格 # 提取数据

2K10
  • Flask web表单 Flask-WTF表单扩展

    Web表单 web表单是web应用程序的基本功能。 它是HTML页面负责数据采集的部件。表单有三个部分组成:表单标签、表单域、表单按钮。...为True和False RadioField 一组单选框 SelectField 下拉列表 SelectMultipleField 下拉列表,可选择多个 FileField 文本上传字段 SubmitField...比较两个字段的,常用于比较两次密码输入 Length 验证输入的字符串长度 NumberRange 验证输入的在数字范围内 URL 验证URL AnyOf 验证输入在可选列表 NoneOf 验证输入不在可选列表...SECRET_KEY用来生成加密令牌,当CSRF激活的时候,该设置根据设置的密匙生成加密令牌。 直接在HTML页面写form表单的示例 1....# 如果form的数据完全满足所有的验证器,则返回真,否则返回假 if form.validate_on_submit(): # 表示验证合格 # 提取数据

    2.3K20

    web开发框架Flask学习二

    表单 pip install flask_wtf 原生的form表单和用类生成的对象,再用对象去创建这个表单...Web 表单是 Web 应用程序的基本功能 它是HTML页面负责数据采集的部件,表单有三个部分组成:表单标签、表单域、表单按钮, 表单允许用户输入数据,...负责HTML页面数据采集,通过表单将用户输入的数据提交给服务器 CSRF 跨站请求伪造        flask_wtf中有个generate_csrf 自动生成...cookie 设置 csrf_token 的在 Form 表单添加一个隐藏的的字段,也是 csrf_token,            在form表单设置csrf              ...后端接受到请求,以以下几件事件: 从 cookie取出 csrf_token从表单数据取出来隐藏的 csrf_token 的进行对比如果比较之后两一样

    79210

    开心!发现一款功能强大的 Python 组件 FlaskForm

    每次我们在建立表单所创建的类都是继承于 Flask_WTF 的 FlaskForm,而 FlaskForm 是继承 WTForms Forms。...,为浮点数 BooleanField—复选框,为 True 和 False RadioField—一组单选框 SelectField—下拉列表 SelectMultipleField—下拉列表,可选择多个...URL—验证url AnyOf—确保输入在可选列表 NoneOf—确保输入不在可选列表 Part3:示例演示 Python 代码 from flask import Flask,render_template...,request,flash #导入wtf扩展的表单类 from flask_wtf import FlaskForm #导入自定义表单需要的字段 from wtforms import SubmitField...print(form.validate_on_submit()) return render_template('register.html', form=form) if __name__

    1.4K10

    带你认识 flask 用户登录

    (hash, 'foobar')True>>> check_password_hash(hash, 'barfoo')False 向验证函数传入之前生成的密码哈希以及用户在登录时输入的密码,如果用户提供的密码执行哈希过程后与存储的哈希匹配...如果使用提供的用户名执行查询并成功匹配,我可以接下来通过调用上面定义的check_password()方法来检查表单随附的密码是否有效。...密码验证时,将验证存储在数据库的密码哈希表单输入的密码的哈希是否匹配。所以,现在我有两个可能的错误情况:用户名可能是无效的,或者用户密码是错误的。...让我们在app/forms.py创建Web表单类来开始吧: from flask_wtf import FlaskFormfrom wtforms import StringField, PasswordField...异常作为参数的消息将会在对应字段旁边显示,以供用户查看。 我需要一个HTML模板以便在网页上显示这个表单,我其存储在app/templates/register.html文件

    2.1K10

    你不知道的React Ref

    React Ref经常与DOM保持紧密关联,但是自从出现了React Hook以后,Ref的使用也不再变得只是与Dom相关的Api,而是可以表示对任何内容的引用(DOM节点,JavaScript等)...具体来说就是返回的对象具有当前属性,该属性可以保存我们任何可以修改的 function Counter() { const hasClickedButton = useRef(false);...通常,每当必须与HTML元素进行交互时,我们都会选择使用React的ref。React本质上是声明性的,但是有时您需要从HTML元素读取值,与HTML元素的API交互,甚至必须将写入HTML元素。...仅为了执行此操作而重新渲染我的整个表单将会执行以下步骤: 将当前的所有表单保存在state 使用这些当前再次重新渲染整个表单 保持子组件可能存在的任何其他状态,例如验证消息等 重置可能正在发生的过度动画...因为你传入的fn每一次都在变化,每一次都导致useEffect销毁前一个定时器,打开一个新的定时器,所以简而言之,如果1秒之内没有重新渲染,定时器会被执行,而如果有新的渲染,定时器重头再来,这让频率变得不稳定

    2.2K50

    带你认识 flask web 表单

    在本例,app/forms.py模块的顶部从flask_wtf导入了名为FlaskForm的基类。...更多的验证器将会在未来的表单接触到。 表单模板 下一步是将表单添加到HTML模板以便渲染到网页上。令人高兴的是在LoginForm类定义的字段支持自渲染为HTML元素,所以这个任务相当简单。...对于保护表单,你需要做的所有事情就是在模板包括这个隐藏的字段,并在Flask配置定义SECRET_KEY变量,Flask-WTF完成剩下的工作。...如果你以前编写过HTML Web表单,那么你会发现一个奇怪的现象——在此模板没有HTML表单元素,这是因为表单的字段对象的在渲染时会自动转化为HTML元素。...redirect('/index') return render_template('login.html', title='Sign In', form=form) 这个版本的第一个新东西是路由装饰器

    2.3K20

    万字长文,Python的应用领域有哪些?

    使用 Flask 和 form 模块创建一个简单的表单页面,并将表单数据提交到数据库 from flask import Flask, render_template, request from flask_wtf...在表单还定义了一些验证器,用于确保表单数据的合法性。 接下来,我们在路由函数创建了一个 UserForm 实例,并将其传递给模板进行渲染。...如果用户提交了表单数据,并且表单验证通过,我们就会将表单数据保存到数据库,并重定向到主页。否则,我们会将表单呈现给用户进行填写。 最后,我们在主函数启动了应用,并开启了调试模式。...(html) 2、解析 HTML 使用 Beautiful Soup 或 lxml 等库解析 HTML,提取出需要的信息。...将提取的数据保存到本地文件或数据库

    19310

    flask flask-login实现用户登陆认证的详细过程(flask 53)

    flask-wtf和wtf主要是用于建立html的元素和Python的类的对应关系,通过在Python代码操作对应的类,对象等从而控制html的元素。...定义表单类示例代码: forms.py from flask_wtf import FlaskForm from wtforms import StringField, BooleanField, PasswordField...False return check_password_hash(self.password_hash, password) def get_password_hash(self):...这里我们是直接存储用户信息到一个json文件"profiles.json" 我们并不直接存储密码,而是存储加密后的hash,在这里我们使用了werkzeug.security包的generate_password_hash...验证password的时候,我们需要使用werkzeug.security包check_password_hash函数来验证密码 get_id是UserMixin类中就有的method,在这我们需要

    2.7K20
    领券