HTML5+setCutomValidity()函数验证表单实例分享


Posted in Javascript onApril 24, 2015

HTML5表单验证给前端人员带来了便利,但是在用户体验上存在一些缺陷,默认的提示对用户很不友好,无法准确的获取想要的信息。好在大牛们在接口设计的时候提供了setCustomValidilty方法可以自定义提示信息。这是一个好消息,但也存在一些弊端,需要让开人员做额外的一些处理才达到真正想要的目的。

示例一:

<!DOCTYPE HTML>
<head>
<meta charset="UTF-8">
<title>Html5页面使用javascript验证表单判断输入</title>
<script language="javascript">
function check(){
  var pass1=document.getElementbyid("pass1");
  var pass2=document.getElementbyid("pass2");
  if (pass1.value!=pass2.value){
    pass2.setCustomvalidity("密码不一致");
  else    
    pass2.setCustomvalidity("");
  }
  var email=document.getElementbyid("email");
  if (!email.checkValidity())
    email.setCustomvalidity("请输入正确的email地址");
}
</script>
</head>
<form id="testForm" onsubmit="return check()">
  密码:<input type="password" name="pass1" id="pass1" /><br/>
  确认密码:<input type="password" name="pass2" id="pass2" /><br/>
  Email:<input type="email" name="email" id="email" /><br/>
  <input type="submit" />
</form>

示例二:

<!DOCTYPE html>
<html>
<head>
  <mata charset="utf-8">
  <title>form test</title>
</head>

<body>
  <form name="test" action="." method="post">
    <input type="text" required pattern="^\d{4}$" oninput="out(this)" placeholder="请输入代码" >
    <button type="submit">Check</button>
  </form>
<script type="text/javascript">
function out(i){
  var v = i.validity;
  if(true === v.valueMessing){
    i.setCustomValidity("请填写些字段");
  }else{
    if(true === v.patternMismatch){
      i.setCustomValidity("请输入4位数字的代码");
    }else{
      i.setCustomValidity("");
    }
  }
}
</script>
</body>
</html>

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
模仿JQuery sortable效果 代码有错但值得看看
Nov 05 Javascript
jQuery 一个图片切换的插件
Oct 09 Javascript
jQuery中extend函数详解
Jul 13 Javascript
jQuery EasyUI之DataGrid使用实例详解
Jan 04 Javascript
Javascript将JSON日期格式化
Aug 23 Javascript
jQueryUI Sortable 应用Demo(分享)
Sep 07 jQuery
利用js将ajax获取到的后台数据动态加载至网页中的方法
Aug 08 Javascript
详解在vue-test-utils中mock全局对象
Nov 07 Javascript
爬虫利器Puppeteer实战
Jan 09 Javascript
详解js获取video任意时间的画面截图
Apr 17 Javascript
详解vue父子组件关于模态框状态的绑定方案
Jun 05 Javascript
解决vant中 tab栏遇到的坑 van-tabs
Nov 04 Javascript
js闭包实现按秒计数
Apr 23 #Javascript
jQuery中使用each处理json数据
Apr 23 #Javascript
javascript数组去重方法汇总
Apr 23 #Javascript
javascript实现英文首字母大写
Apr 23 #Javascript
原生js和jquery实现图片轮播淡入淡出效果
Apr 23 #Javascript
浅谈javascript中for in 和 for each in的区别
Apr 23 #Javascript
原生js和jquery实现图片轮播特效
Apr 23 #Javascript
You might like
Linux中用PHP判断程序运行状态的2个方法
2014/05/04 PHP
PHP中的闭包(匿名函数)浅析
2015/02/07 PHP
PHP.vs.JAVA
2016/04/29 PHP
php批量删除操作(数据访问)
2017/05/23 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
2017/12/26 PHP
PHP使用Session实现上传进度功能详解
2019/08/06 PHP
PHP设计模式(九)外观模式Facade实例详解【结构型】
2020/05/02 PHP
JS 用6N±1法求素数 实例教程
2009/10/20 Javascript
浅析javascript操作 cookie对象
2014/12/26 Javascript
javascript中attachEvent用法实例分析
2015/05/14 Javascript
JavaScript函数的调用以及参数传递
2015/10/21 Javascript
jQuery实现瀑布流布局详解(PC和移动端)
2020/09/01 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
2017/01/09 Javascript
vue2组件实现懒加载浅析
2017/03/29 Javascript
Webpack实现按需打包Lodash的几种方法详解
2017/05/08 Javascript
微信小程序 wx.request方法的异步封装实例详解
2017/05/18 Javascript
JavaScript 中使用 Generator的方法
2017/12/29 Javascript
ES6 系列之 Generator 的自动执行的方法示例
2018/10/19 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【矩形情况】
2018/12/13 Javascript
JavaScript遍历DOM元素的常见方式示例
2019/02/16 Javascript
vue界面发送表情的实现代码
2020/09/11 Javascript
jdk1.8+vue elementui实现多级菜单功能
2020/09/24 Javascript
[05:31]DOTA2英雄梦之声_第04期_光之守卫
2014/06/23 DOTA
[01:24:16]2018DOTA2亚洲邀请赛 4.6 全明星赛
2018/04/10 DOTA
python中stdout输出不缓存的设置方法
2014/05/29 Python
python 统计文件中的字符串数目示例
2019/12/24 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
html5 音乐播放器 audio 标签使用概述
2013/07/15 HTML / CSS
全球性的女装店:storets
2019/06/12 全球购物
印度民族服装购物网站:BIBA
2019/08/05 全球购物
怎么处理XML的中文问题
2015/03/26 面试题
初中教师个人总结
2015/02/10 职场文书
旗帜观后感
2015/06/08 职场文书
城镇居民医疗保险工作总结
2015/08/10 职场文书
python 离散点图画法的实现
2022/04/01 Python
Go中使用gjson来操作JSON数据的实现
2022/08/14 Golang