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 相关文章推荐
javascript Xml增删改查(IE下)操作实现代码
Jan 30 Javascript
ExtJS 工具栏 分页事件参数
Mar 05 Javascript
js菜单点击显示或隐藏效果的简单实例
Jan 13 Javascript
JS实现从网页顶部掉下弹出层效果的方法
Aug 06 Javascript
JS、jQuery中select的用法详解
Apr 21 Javascript
Node.js 文件夹目录结构创建实例代码
Jul 08 Javascript
整理关于Bootstrap列表组的慕课笔记
Mar 29 Javascript
node.js平台下利用cookie实现记住密码登陆(Express+Ejs+Mysql)
Apr 26 Javascript
前端开发不得不知的10个最佳ES6特性
Aug 30 Javascript
JS中offset和匀速动画详解
Feb 06 Javascript
微信小程序如何修改本地缓存key中单个数据的详解
Apr 26 Javascript
javascript实现切割轮播效果
Nov 28 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
php的一个简单加密解密代码
2014/01/14 PHP
新浪微博OAuth认证和储存的主要过程详解
2015/03/27 PHP
php 类自动载入的方法
2015/06/03 PHP
php生成静态html页面的方法(2种方法)
2015/09/14 PHP
Thinkphp5+Redis实现商品秒杀代码实例讲解
2020/12/29 PHP
javascript基本语法分析说明
2008/06/15 Javascript
js 学习笔记(三)
2009/12/29 Javascript
JQuery中each()的使用方法说明
2010/08/19 Javascript
jQuery中after的两种用法实例
2013/07/03 Javascript
js图片延迟技术一般的思路与示例
2014/03/20 Javascript
Node.js模块加载详解
2014/08/16 Javascript
JS实现仿QQ聊天窗口抖动特效
2015/05/10 Javascript
JQuery中层次选择器用法实例详解
2015/05/18 Javascript
JavaScript实现Java中Map容器的方法
2016/10/09 Javascript
浅谈Javascript中的Label语句
2016/12/14 Javascript
Angular2中如何使用ngx-translate进行国际化
2017/05/21 Javascript
微信小程序自定义对话框弹出和隐藏动画
2018/07/19 Javascript
Node.js对MongoDB进行增删改查操作的实例代码
2019/04/18 Javascript
详解vue中v-bind:style效果的自定义指令
2020/01/21 Javascript
在vue中实现echarts随窗体变化
2020/07/27 Javascript
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
菜鸟使用python实现正则检测密码合法性
2016/01/05 Python
python 使用poster模块进行http方式的文件传输到服务器的方法
2019/01/15 Python
Python 动态导入对象,importlib.import_module()的使用方法
2019/08/28 Python
Python单元测试模块doctest的具体使用
2020/02/10 Python
详解pandas映射与数据转换
2021/01/22 Python
Casadei卡萨蒂官网:意大利奢侈鞋履品牌
2017/10/28 全球购物
瑞典耳机品牌:URBANISTA
2019/12/03 全球购物
教师评优事迹材料
2014/01/10 职场文书
社区健康教育实施方案
2014/03/18 职场文书
汽车促销活动方案
2014/03/31 职场文书
商务英语专业大学生职业生涯规划书
2014/09/14 职场文书
幼儿园大班教师个人工作总结
2015/02/05 职场文书
学籍证明模板
2015/06/18 职场文书
redis 解决库存并发问题实现数量控制
2022/04/08 Redis
源码安装apache脚本部署过程详解
2022/09/23 Servers