• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > 使用HTML5的表单验证的简单示例_html5教程技巧

使用HTML5的表单验证的简单示例_html5教程技巧

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5,表单等相关知识,匿名希望在学习及工作中可以帮助到您
HTML5对表单元素提供了patern属性,它接受一个正则表达式。表单提交时这个正则表达式会被用于验证表单内非空的值,如果控件的值不匹配这个正则表达就会弹出提示框,并阻止表达提交。提示框内的文字可以使用setCustomValidity方法来自定义。
  比如下面这个表单内,文本框只接受大陆的手机号,输入其它东西就无法提交
运行

  1. >
  2. <form>
  3. <input id="text" pattern="^1[3-9]\d{9}$" required />
  4. <input id="button" type="submit" />
  5. form>

  注意只有非空的表单才会使用正则验证,如果什么都不输入的话,pattern不会被使用,所以还需要required协助。但是这个代码弹出的提示是这样的:

这样的提示文字只有猴子看得懂!所以我们还需要更友好的提示文字,使用setCustomValidity方法来定义。
运行

  1. >
  2. <form>
  3. <input id="text" pattern="^1[3-9]\d{9}$" required />
  4. <input id="button" type="submit" />
  5. form>
  6. <script>
  7. text.oninput=function(){
  8. text.setCustomValidity("");
  9. };
  10. text.oninvalid=function(){
  11. text.setCustomValidity("请不要输入火星的手机号好吗?");
  12. };
  13. script>

invalid事件会在表单submit事件之前触发,如果验证不通过的话就不会触发表单的submit。而提交时会先验证所有表单元素是值是否有效。除了提交外还可以手动调用checkValidity方法来执行验证。
  上面的例子中我直接对控件设置固定的提示其实不太好,有时候可能需要更详细的提示信息,比如空的时候提示为空、太长的时候提示太长、非数字的时候提示非数字等。这些动作可以通过程序验证后动态地setCustomValidity来实现。
  其实我觉得HTML5的这套API设计的很糟糕,虽然可以满足基本需求,但还真不太实用。

手机页面中表单提交用JavaScript验证信息 会弹出窗口,用户体验极差,所以再给出一个手机端用HTML5的属性来验证的示例:

  1. <input id="name" name="name" placeholder="name" required="" tabindex="1" type="text">
  2. <input id="email" name="email" placeholder="telephone" required="" tabindex="2" type="text" pattern="(^(\d{3,4}-)?\d{7,8})$|^(13|15|18|14)\d{9}$">
  3. <input id="subject" name="subject" placeholder="example@domain.com" required="" tabindex="2" type="text">
  4. // 主要用了HTML的一下属性
  5. // 1.placeholder 提供可描述输入字段预期值的提示信息。 该提示会在输入字段为空时显示,并会在字段获
  6. //得焦点时消失
  7. //2.required 属性规定必需在提交之前填写输入字段
  8. //3.pattern 是正则表达式, 里面可以直接填写正则表达式

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2018-12-03使用html实现简单的柱状图效果
  • 2018-12-03html5 canvas绘制爱心的方法示例
  • 2018-12-03jQuery+koa2怎么实现Ajax请求
  • 2018-12-03phonegap使用方法介绍(五)本地存储的实现方法
  • 2018-12-03教你用H5绘图的基础方法
  • 2018-12-03HTML5 canvas基本绘图之图形组合
  • 2018-12-03HTML5+A*算法实现游戏寻路的代码分享
  • 2017-08-06值得收藏的HTML5资源(学习html5的朋友可以收藏下)
  • 2017-08-06HTML 5.1来了 9月份正式发布 更新内容预览
  • 2018-12-03HTML5实现上传图片预览效果代码

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • css3 如何实现圆边框的渐变? 如图
    • 怎么爬取twitter某个用户的所有tweets?
    • 零基础的人怎么用 HTML5 制作幻灯片?
    • HTML5 canvas基本绘图之绘制曲线
    • 优秀WEB前端UI框架推荐
    • HTML5 Canvas:绘制渐变色
    • 小强的HTML5移动开发之路(10)——在线画板
    • 有关变幻的课程推荐4篇
    • JS案例联系之留言板
    • html5开发表白神器实现代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有