H5 新增表单
1.提示占位 placeholder
<input type="text" name="userName" placeholder="请输入用户名">
placeholder的文本默认是浅灰色,如果要修改,可以通过伪元素来进行设置
input::placeholder{
color: red;
}
2.自动获取焦点 autofocus
添加这个属性后,页面加载时这个输入框会自动获取焦点
<input type="text" name="userName" autofocus>
3.自动完成 autocomplete
- 开启这个属性后,on打开(默认) off关闭,当这个输入框获取焦点时,会自动提示提交过的数据。
- 注意:数据必须成功提交过,且这个input标签必须有name属性,因为它依靠name属性的值来筛选提交过的数据,只有name属性值一致时,才会将之前提交的数据提示出来。
<div>
用户名:<input type="text" name="userName" autocomplete="on">
爱好:<input type="text" name="hobby" autocomplete="on">
</div>
4.必须输入,不能为空 required
如果此输入框未输入内容,则会阻止提交
<div>
用户名:<input type="text" name="userName" required>
</div>
5.正则表达式验证 pattern
如果此输入内容不符合正则验证,则会阻止提交
<div>
手机号:<input type="tel" name="tel" pattern="/^1\d{10}$/">
</div>
6.多选 multiple
<!-- 文件多选 -->
<div>文件:<input type="file" name="userFile" multiple></div>
<!-- 邮箱多选,每个邮箱用 逗号 隔开 -->
<input type="email" name="userEmail" multiple>
7.表单关联
表单默认只会提交它内部的input元素的内容,如果外部的input想要包含进来,则外部的input标签要设定form属性,值为目标form的id
<form id="myForm"></form>
<input type="text" name="user" form="myForm"></input>
8.oninput事件
- 含义:当输入框内容发生改变机会触发,输入框每输入/减少一个字符,甚至连输入中文,还未选中文字时都会触发。而change事件只会在输入完成,失去焦点时触发
<script>
var tel = document.querySelector("[type=tel]")
tel.oninput = function(){
console.log("input")
}
tel.onchange = function(){
console.log("change")
}
</script>
9.oninvalid事件
- 含义:当验证不通过时触发,在回调中通过setCustomValidity()方法可以设置提示信息
<div>
手机号:<input type="tel" name="tel" pattern="/^1\d{10}$/">
</div>
<script>
var tel = document.querySelector("[type=tel]")
tel.oninvalid = function(){
console.log("验证失败")
this.setCustomValidity("手机格式错误")
}
</script>
10.关闭校验
当点击提交时,当输入框的类型和输入的值不符合时,触发校验失败 ,可以给form元素设置 novalidate 属性来关闭校验
<form novalidate>
</form>
form.noValidate = true
H5 新增表单的更多相关文章
- H5 新增表单属性和事件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- H5新增表单属性
一.form属性 <form id="test"> <input type="text" placeholder="请输入合适的信息 ...
- 疯狂的表单-html5新增表单元素和属性
疯狂的表单 2015/11/27 16:44:07 从三方面来介绍html5表单的新特性 表单结构更灵活 要提交数据的控件可以布局在form标签之外,看下面的代码,表单元素可以写到form元素之外,只 ...
- H5学习之旅-H5的表单(11)
H5的表单元素 form:表单 input:输入域,type属性可以设置text,password,button等不同的属性 textarea:文本域 lable:控制标签 fieldset:定义域 ...
- H5智能表单
表单 keygen元素的作用是提供一种验证用户的可靠方法 datalist 元素规定输入域的选项列表 output元素用于不同类型的输出,比如计算或脚本输出 智能表单 input 新增type值 em ...
- HTML5新增表单验证
HTML5新增属性: 属性 描述 placeholder 提供一种提示,输入域为空时显示,获得焦点输入内容后消失 required 规定输入域不能为空 pattern 规定验证input域的模式(正则 ...
- 移动端H5通用表单验证插件
将表单验证的通用部分提炼出来,做成一个简易插件,方便调用. 已将源码放到GitHub上,名字叫zValidate. 手机可扫描下图查看示例,PC端可点击此处查看: 一.原理 1)需要引入zepto.j ...
- html5新增表单元素
1.验证 <form> <input type="email"></input> 验证邮箱 <input type="ur ...
- html5 新增表单控件和表单属性
新的输入型控件 email:电子邮箱文本框,跟普通的没什么区别 当输入不是邮箱的时候,验证通不过 移动端的键盘会有变化 tel:电话号码 一般用于手机端,是一个键盘切换 url:网页的 ...
- IT兄弟连 HTML5教程 HTML5表单 HTML5新增表单元素
HTML5有一些新的表单元素:<datalist>.<keygen>.<output>.不是所有的浏览器都支持HTML5新的表单元素,但即使浏览器不支持该表单属性, ...
随机推荐
- Vert.x HttpClient调用后端服务时使用Idle Timeout和KeepAlive Timeout的行为分析
其实网上有大量讨论HTTP长连接的文章,而且Idle Timeout和KeepAlive Timeout都是HTTP协议上的事情,跟Vert.x本身没有太大关系,只不过最近在项目上遇到了一些问题,用到 ...
- トヨタ自動車プログラミングコンテスト2024#7(ABC 362)
非常好名次,使我的 \(1\) 旋转 四发罚时应该是这次比赛最唐的东西了,没有就进前一千了 A.Buy a Pen 特判秒了,懒得打三种 ans=,所以就把不能选的那个赋值成无穷大了 #include ...
- Android Qcom USB Driver学习(一)
该系列文章总目录链接与各部分简介: Android Qcom USB Driver学习(零) USB接口类型 Android终端上常用的USB接口:TypeC(现在的主流),MicroB(以前的设备) ...
- Java日期时间API系列26-----Jdk8中java.time包中的新的日期时间API类,YearMonth类的源码,转换和应用。
Java8中为年月新增了类YearMonth,可以用来表示卡片过期时间等问题. 1.YearMonth 默认格式为:2007-12 1.1 部分源码 * * @implSpec * This clas ...
- 2023年第十二届数据技术嘉年华(DTC)资料分享
第十二届数据技术嘉年华(DTC 2023)已于4月8日在北京圆满落幕,大会围绕"开源·融合·数智化--引领数据技术发展,释放数据要素价值"这一主题,共设置有1场主论坛,12场专题论 ...
- typeof typeof 'texs'是什么类型
typeof '12' 返回 'string' 是字符串类型 :
- 自定义log4j2的PatternLayout参数
1.添加类 package com.yuanian.micro.config; import org.apache.logging.log4j.core.LogEvent; import org.ap ...
- 使用Pydantic和SqlAlchemy实现树形列表数据(自引用表关系)的处理,以及递归方式处理数据差异
在我的设计框架业务中,字典大类.部门机构.系统菜单等这些表,都存在id.pid的字段,主要是作为自引用关系,实现树形列表数据的处理的,因为这样可以实现无限层级的树形列表.在实际使用Pydantic和S ...
- 五分钟一百行代码,手写一个vue项目全局通用的toast提示组件
前言: 我们已经分享过如何快速实现自己需要的全局弹框组件: 在开发 Vue 项目时,特别是H5页面的项目,还有一个组件是我们非常常用的,它相对弹框来说没有那么大,并且不需要手动关闭在需要更简洁的提示用 ...
- Linux 基础-查看进程命令 ps 和 top
目录 1,使用 ps 命令找出 CPU 占用高的进程 2,通过 top 命令定位占用 cpu 高的进程 3,htop 系统监控与进程管理软件 4,参考资料 1,使用 ps 命令找出 CPU 占用高的进 ...