自行编写代码解决 WTForm 无纯 Button 按钮的问题——input篇

在使用 Flask 框架的过程中,会时常使用到 WTForm1 这个库。然而在使用中却发现,该库提供的 HTML 元素并不完整,基本只局限于表单所使用的内容。尤其是页面中常用的按钮只有用于提交表单的 submit 功能,在其内部表示为 SubmitField

当然这样的设计与该库本身立足于页面表单功能是紧密相连的。对于表单来说,按钮的最大功能就是提交表单。然而,我们并不能排除在一个表单中存在多个按钮,用于提供不同功能的情况。所以,单纯的 SubmitField 所实现的提交按钮就显得非常局限。此时,我们就需要利用 WTForm 提供的自定义 FieldWidget 功能,自己编写代码,来实现自己想要的按钮功能。

我们知道,在页面中,要实现一个按钮,通常的方式有两个:

  1. 使用 <input type='button' /> 来创建一个按钮
  2. 使用 <button type='button'>BUTTON</button> 来实现一个按钮

这两种方式各自的特点在此不进行阐述,总之,我们现在的目标就是要通过自定义的方式实现他们,且让 Jinja2 模板引擎能够正确的在页面渲染出按钮。

因为 WTForm 的官方文档并不完善,所以这里我们推荐直接通过阅读库的源代码的方式来学习自定义开发。

既然我们需要的是按钮,那么最直接的参考是 SubmitField

首先我们实现一个 SubmitField,查看其对应的页面 HTML 代码如下:

<input id="submit" 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值