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 相关文章推荐
最新优化收藏到网摘代码(digg,diigo)
Feb 07 Javascript
myEvent.js javascript跨浏览器事件框架
Oct 24 Javascript
javascript实现tabs选项卡切换效果(扩展版)
Mar 19 Javascript
JavaScript中双叹号(!!)作用示例介绍
Apr 10 Javascript
用C/C++来实现 Node.js 的模块(一)
Sep 24 Javascript
jQuery中:checked选择器用法实例
Jan 04 Javascript
JavaScript之Object类型介绍
Apr 01 Javascript
jQuery实现自动切换播放的经典滑动门效果
Sep 12 Javascript
js弹出对话框方式小结
Nov 17 Javascript
JavaScript实现分页效果
Mar 28 Javascript
JavaScript简单拖拽效果(1)
May 17 Javascript
JS实现运动缓冲效果的封装函数示例
Feb 18 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
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
2013/06/14 PHP
WampServer下安装多个版本的PHP、mysql、apache图文教程
2015/01/07 PHP
WordPress中用于获取文章作者与分类信息的方法整理
2015/12/17 PHP
JAVASCRIPT 对象的创建与使用
2021/03/09 Javascript
[对联广告] JS脚本类
2006/08/27 Javascript
有趣的JavaScript数组长度问题代码说明
2011/01/20 Javascript
JS 实现导航栏悬停效果
2013/09/23 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
2016/07/15 Javascript
angular ngClick阻止冒泡使用默认行为的方法
2016/11/03 Javascript
JS求解三元一次方程组值的方法
2017/01/03 Javascript
jQuery实现复制到粘贴板功能
2017/02/11 Javascript
vue2.x 父组件监听子组件事件并传回信息的方法
2017/07/17 Javascript
vue2.0在table中实现全选和反选的示例代码
2017/11/04 Javascript
详解Vue中的scoped及穿透方法
2019/04/18 Javascript
基于Node.js搭建hexo博客过程详解
2019/06/25 Javascript
javascript移动端 电子书 翻页效果实现代码
2019/09/07 Javascript
JS常用排序方法实例代码解析
2020/03/03 Javascript
[59:36]2018DOTA2亚洲邀请赛 4.3 突围赛 Secret vs VG 第二场
2018/04/04 DOTA
Python读写ini文件的方法
2015/05/28 Python
Python中的with语句与上下文管理器学习总结
2016/06/28 Python
python利用urllib和urllib2访问http的GET/POST详解
2017/09/27 Python
Python读取文件内容的三种常用方式及效率比较
2017/10/07 Python
Python寻找路径和查找文件路径的示例
2019/07/10 Python
手写一个python迭代器过程详解
2019/08/27 Python
Python和Sublime整合过程图示
2019/12/25 Python
浅析pip安装第三方库及pycharm中导入第三方库的问题
2020/03/10 Python
Pytorch 高效使用GPU的操作
2020/06/27 Python
css3学习之2D转换功能详解
2016/12/23 HTML / CSS
HTML5的postMessage的使用手册
2018/12/19 HTML / CSS
曼联官方网上商店:Manchester United Direct
2017/07/28 全球购物
Vans澳大利亚官网:购买鞋子、服装及配件
2019/09/05 全球购物
OLEDBConnection和SQLConnection有什么区别
2013/05/31 面试题
2014庆六一活动方案
2014/03/02 职场文书
敬老院活动总结
2014/04/28 职场文书
宪法宣传周工作方案
2014/05/26 职场文书
2015年学校教研室主任工作总结
2015/07/20 职场文书