html中input文本框的内容不符合要求时的错误提示

方法一:后端的表单验证器,部分框架有现成的,不满足自己的需求时可自定义一个。如WTForms,点提交后才触发验证,如果有不合法的内容,会清空所有内容(包括合法的),需全部重新输入一次。用户体验不如方法二。验证器里可以直接传入验证失败时的提示,即直接传入字符串。

方法二:前端Ajax验证,可设置文本框失去焦点时验证,是实时的验证,用户体验好。在要验证的输入框后添加span标签,用于显示验证是否成功的提示。

flask里一开始我的表单都是根据类渲染生成的,验证用的方法一。后来从bootstrap复制了一个表单,内容是邮箱,除了方法二的验证外,还查到一种方法,类似方法一。

<input type="email" class="form-control" id="new_email" name="new_email" placeholder="请输入新邮箱,并点击发送验证码" pattern="^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$" oninvalid="setCustomValidity('邮箱格式不正确');">
<!--这里正则开头结尾不能加/,加了后虽然实际邮箱正确但会匹配失败。提交时才触发oninvalid事件(同时我也另外写了Ajax验证),也可以写在js里-->

这种方法的效果图,红字是Ajax验证的提示。

最后,又查到jQuery也可以实现这种验证,详情在参考链接3和4

参考链接1,参考链接2,参考链接3,参考链接4

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值