h5 新增的invalid事件,貌似有很大bug

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
form{
width: 640px;
margin:0 auto;
}

input{
display: block;
width: 100%;
height: 25px;
margin-bottom:20px;
}
</style>
</head>
<body>
<form>
<fieldset>
<legend>表单</legend>
<!--<label>
用户名:<input type="text" name="username" class="username"/>
</label>-->
<label>
tel:<input type="tel" name="tel" class="tel" pattern="^1[0-9]{10}$"/>
</label>
<input type="submit" value="提交数据" id="submit"/>
</fieldset>
</form>
<script>
var userName=document.querySelector(‘.username‘);
var tel=document.querySelector(‘.tel‘);
function fn(){
console.log(typeof this.value);
this.setCustomValidity(‘输入格式有误,11位数字!‘);//此处必须指定为this
}
tel.addEventListener(‘invalid‘,fn)
</script>
</body>
</html>

bug:  当第一次输入的电话号码不正确的时候,不刷新页面,输入正确的电好号码, 还是不断提示验证不通过,,除非刷新页面,第一次就直接输入正常电话号码,就不会触发invalid事件

时间: 2024-10-11 17:30:53

h5 新增的invalid事件,貌似有很大bug的相关文章

发几枚win10专业版和office2019的激活密钥,貌似需求很大!

Windows_10_Professional_RETAIL key:3TNXY-TPM6T-4T9KR-9HFX2-YKMP647DFD-BNH38-X9DKP-T7T6T-PDKTT4MNRY-V88K2-Q2RRX-7V4RD-BG9TT4N2HF-TH24M-6VTWT-JC72V-JQKTT4Y3NM-RD42Y-X3FKW-FRPMM-F9CKG3Q44N-3J4FP-6MWBV-8PDK8-4VV26 office2019 pro plus key: F4VT9-6VNPC-GX9

H5新增特性

1.pattern:写正则,但是需要和form表单连着用 2.WebSocket "网络套接字", 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议.在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输.现在,很多网站为了实现推送技术,所用的技术都是 Ajax 轮询.轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出HTTP请求,然后由服务器返回最新的数据给客户端的浏览器.这种传统的

h5新增浏览器本地缓存localStorage

h5新增属性学习笔记(非原创) html5中的Web Storage包括了两种存储方式:sessionStorage和localStorage. sessionStorage用于本地存储一个会话(session)中的数据,这些数据只有在同一个会话中的页面才能访问并且当会话结束后数据也随之销毁. 因此sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储. 而localStorage用于持久化的本地存储,除非主动删除数据,否则数据是永远不会过期的. 一.web storage和

web语义化与h5新增标签

Web语义化就是html告诉我们也告诉机器这一块是什么内容,例如:“这行是一个标题,这几行组成一个段落,这是一个列表,那是一个链接.” Web语义化有三个阶段: 1.h1~h6.thead.ul.ol等HTML标签.这些标签用于在Web页面中组织对应的内容,如网页标题.表头.无序.有序列表,以达到更方便的协作及传播互联网内容.搜索引擎很好的利用了这些语义化标签抓取内容. 2.随着Web的发展,起初定义的HTML语义化标签,不足以实现对Web页面各个部分的功能或位置描述,比如我们用div来表示页面

H5新增特性整理

1.简化的文档类型和字符集 (1)文档类型 <!DOCTYPE HTML> 之所以如此简单,是因为HTML5不再是SGML( Standard Generalized Markup language,标准通用标记语言)的一部分,而是独立的标记语言,不需要再考虑文档类型 (2)字符集 <meta charset="UTF-8"> 只需要utf-8即可 2.富有语义化的新结构元素 <header> <h1>HTML5新结构<h1/>

H5新增属性02

H5智能表单 input 新增 type值 email 若输入的样式不和邮箱一样则报错 url 必须输入url地址(加http://) number 只能输入数字 属性:min max step value(默认值) range 取值范围 属性:min max step value(默认值) tel search 效果和text一样,专用于搜索框 属性:result color 调出取色板 date:选取日月年 month:选取月年 week:选取周年 time:选取时间,小时和分钟 datet

jquery为新增元素添加事件

jquery为新增元素添加事件 默认情况,你使用jquery新增一个元素 ,用class的方法无法绑定事件,需要将绑定的函数放到jquery外面 然后在绑定行内事件 这样就可以绑定了

h5新增属性

H5新增标签 结构标签 (双) header 头面 页面头部 section的头部 footer 页脚 nav 导航 aside 侧边栏 main 规定文档的主体内容 section 定义文档中的小节 article 定义文章 论坛 报纸 用户评论 details 属性open summary dialog 对话框 属性 open 文本标签 mark 标记 time 时间 meter 度量 温度/电量/容量 属性 max/min/value/low/high/optimum progress 进

h5新增内容

一.h5新增标签:摘取w3cSchool: <article>定义 article.<aside> 定义页面内容之外的内容. <footer> 定义 section 或 page 的页脚.<header>定义 section 或 page 的页眉.<section>定义 section. <nav>定义导航链接. <canvas> 定义图形.<audio> 定义声音内容. <video>定义视频.&