h5 php表单验证,H5表单验证失败该怎样提示
这次给大家带来H5表单验证失败该怎样提示,怎么用H5表单验证失败的提示?H5表单验证失败提示的注意事项有哪些,下面就是实战案例,一起来看一下。
我们知道,前端的童鞋在写页面时, 都不可避免的总会踩到 表单验证这个坑.这时候, 我们就要跪了, 因为要写一堆 js 来检查. 但是自从 H5 出现后, 很多常见的 表达验证 , 它都已经帮我们实现了, 让我们减轻了很多负担, 就好像下面的:
邮箱地址验证:
Test
邮箱:
邮箱验证是 H5 自身支持的, 但是我们要验证的场景和情况是多种多样的, 那该怎么办? 用回 Js 吗? 很明显没这么蛋疼, 因为 H5 提供了 pattern 属性, 让我们自食其力! 我们可以在 pattern 指定正则表达式, 只要正则写的好, 验证就没烦恼!
正则限定11位数字:
Test
数字:
问题
大家可以尝试下, 在输入非11位的数字, 都会报错, 这就是 pattern 的功劳. 但是不知道大家发现了一个蛋疼的现象没? 就是如果咱们使用 pattern 的方式去验证表单, 在验证失败时, 它的提示都是 请与所请求的格式保持一致 , 我的天, 我们的用户怎么知道所请求的格式是什么鬼, 总不能让他们去看源码吧, 要真这样, 我们连页面都不用写了, 直接让他们把钱给我们得了, 开个玩笑~
解决方案
有问题, 咱们就得解决, 在面向谷歌编程许久, 终于觅得一良方:
oninvalid:提交的input元素的值为无效值时(这里是正则验证失败),触发
oninvalid事件。oninvalid属于Form 事件。
setCustomValidity():这个是HTML5内置的JS方法,用来自定义提示信息
原来可以通过 oninvalid 和 setCustomValidity 来自定义提示, 那这就好办了, 修改源代码如下:
Test
数字:
终于不是那个蛋疼的"格式"了, 现在表单验证提示已经很明确的告诉我们, 这里应该输入的是什么样的数据, 这样用户就能更好的修改自己的输入了!
相信看了这些案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
相关阅读:
h5 php表单验证,H5表单验证失败该怎样提示相关推荐
- 手写表单及h5表单验证举例
表单是一个很重要的概念,这里涉及到收集数据以及验证数据,以及表单的用户体验.一般ui框架会有封装好的这些功能. 这里复习一下手写表单,顺带复习一下表单的基本属性,基本样式和h5的表单验证. 一个表单基 ...
- [H5表单]一些html5表单知识及EventUtil对象完善
紧接着上面的文章,一开始准备一篇文章搞定,后来看到,要总结的东西还不少,干脆,把上面文章拆成两部分吧,这部分主要讲讲表单知识! 表单知识 1.Html5的autofocus属性. 有个这个属性,我们不 ...
- html表单验证的作用,HTML5表单元素 、 表单属性 、 表单验证
[HTML5新表单] 1.type: - email : 验证逻辑不完整,只验证是否包含 @ : - search : - url : 验证逻辑不完整,只判断是否包含 http:// : - tel ...
- Form表单提交前进行JS验证的3种方式
1. 提交按钮的onclick事件中验证 <script type="text/javascript"> function check(form) { ...
- ExtJs 备忘录(3)—— Form表单(三) [ 数据验证 ]
正文 一.资料 1.1. 表单提示的方式设置,如: Ext.form.Field.prototype.msgTarget='side' 该设置为枚举值:'qtip','side','title','u ...
- 重置表单验证 清除表单校验信息
重置表单验证 清除表单校验信息 提交表单验证的时间经常遇见的一个问题 再次打开时表单验证依旧存在,这种就很烦,用户体验有点差, 在使用Vant或Element UI框架时经常会遇到,再次打开表单时,原 ...
- php 自动验证表单类,thinkPHP 表单自动验证功能
昨天晚上我们老大叫我弄表单自动验证功能,愁了半天借鉴了好多官网的知识,才出来,诶,总之分享一下我自己的成果吧! thinkphp 在Model基类为我们定义了自动验证的函数和正则表达式,我们只需要在对 ...
- angularjs php登录验证,AngularJs表单验证的方法
Anjularjs表单验证 能够根据用户在表单中输入的内容给出实时视觉反馈是非常重要的.在人与人沟通的语境中,表单验证给出来的反馈同获得正确输入同等重要. 表单验证不仅能给用户提供有用的反馈,同时也能 ...
- php ci提交表单验证,ci表单验证代码
概述 这是只考虑php对表单数据的接收处理.至于js部分以前会结合validate来讲解下 在解释 CodeIgniter 的数据验证处理之前,让我们先描述一下一般的情况: 一个表单显示了. 你填写并 ...
最新文章
- MS DTC 无法正确处理 DC 升级/降级事件的解决
- 添加service到SystemService硬件服务
- Linux笔记:vim
- Linux 随机启动 Mysql​
- Splash resource_timeout 属性
- 5 个鲜为人知 GNU 调试器(GDB)技巧 | Linux 中国
- mysql 5.5 特性_MySQL5.5复制新特性
- 使用phoneGap和Sencha Touch 2开发Android应用程序(四)
- html+css+js实现简易计算器
- 解决Perhaps JAVA_HOME does not point to the JDK.
- Datawhale组队学习周报(第042周)
- 忍之の爱你术 全代码
- 异星工厂服务器无响应,异星工厂无法联机解决方法 异星工厂无法联机怎么办...
- 被机器学习遗忘的大洲:非洲正尝试建立自己的“NeurIPS会议”
- CentOS yum方式升级内核kernel
- Python | 小白的 Asyncio 教程
- 栈的应用之符号匹配问题
- HyperLynx(四)差分传输线模型
- 学计算机U盘内存,用U盘启动盘快速检测电脑内存的详细教程
- [jobdu]二进制中1的个数
热门文章
- linux lsmod(查看驱动模块)和 ls /dev(驱动设备)
- LTE(4G) 寻呼 (Paging)
- c语言课程设计歌曲管理,C语言课程设计-歌曲信息管理系统.doc
- Nginx服务器js加载不全,报206 (Partial Content)错误
- EntityFramwork6连接MySql错误
- 极客星球 | 阿里:云原生数据湖构建与分析实践
- oracle 修改nls_nchar_characterset,Oracle的NLS_NCHAR_CHARACTERSET和NLS_CHARACTERSET之间的区别...
- 【西瓜书】5-神经网络
- python搭建分布式集群_利用python的dask搭建分布式集群
- vscode 设定中文字体