HTML5目前最新的规范(标准)是2014年10月推出
2005年左右出现HTML5版本(非标准)
W3C组织(两个组织定义H5规范)
学习(研究)HTML5是学习未来(将来主流)
HTML版本 - 第一阶段主要学习还是4版本(包含5版本)
<header><nav>
HTML5版本之后,声明不再出现版本信息
有意地版本,以后可能不再会有新版本
HTML5的规范内容实时更新
注意
HTML5永远都不可能离开javascript.
HTML5在移动端支持好于PC端
HTML5新表单
input新类型
email类型 - 验证是否包含"@"
url类型 - 验证是否包含"http://"
tel类型 - 只在移动端显示
number类型
range类型
date类型
color类型
表单新元素
datalist元素
progress元素
meter元素
output元素
表单新属性
placeholder - 提供默认提示内容
multiple - 允许输入多个值
多个值之间使用","
autofocus - 自动获取焦点
form - 允许表单元素定义在表单之外
表单新验证
验证属性
required属性
验证当前元素值是否为空
pattern属性
使用正则表达式验证当前元素值是否匹配
注意 - 并不能验证当前元素值是否为空
min和max属性
验证当前元素值最小值或最大值
一般适用于number、range等元素
minlength和maxlength属性
minlength - 验证当前元素值的最小长度
输入值时,允许输入小于指定值
提交表单时,验证元素值最小长度
注意
minlength并不是HTML5新属性
maxlength - 验证当前元素值的最大长度
输入值时,长度不能大于指定值
validity属性
表单验证HTML5提供一种有效状态
有效状态通过validityState对象获取到
validityState对象可通过validity属性得到
验证(有效)状态
validityState对象提供了一系列的有效状态
通过这些有效状态,进行判断
注意
所有验证状态必须配合上述的验证属性使用
作用
用来替换原本手工实现的逻辑
验证状态
valid
作用 - 判断当前元素值是否正确
注意
该状态返回true,表示验证成功
该状态返回false,表示验证失败
valueMissing
作用 - 判断当前元素值是否为空
用法 - 配合required属性使用
typeMismatch
作用 - 判断当前元素值的类型是否匹配
用法 - 配合email、number、url等
patternMismatch
作用 - 判断当前元素值是否与指定正则表达式匹配
用法 - 配合pattern属性使用
tooLong
作用 - 判断当前元素值的长度是否正确
用法 - 配合maxlength属性
注意
使用maxlength属性后,实际不可能出现长度大于maxlength的值
tooLong很难出现这种情况
rangeUnderflow
作用 - 判断当前元素值是否小于min属性值
用法 - 配合min属性
注意 - 并不能与max属性值进行比较
stepMismatch
作用 - 判断当前元素值是否与step设置相符
用法 - 配合step使用
注意 - 并不能与min或max属性值进行比较
customError
用法 - 配合setCustomValidity()方法
如果使用该方法,该状态返回true
setCustomValidity()方法
作用 - 设置自定义的错误提示内容
问题 - 使用该方法设置错误信息
当输入正确时,调用该方法将信息设置为空("")
不能使用上述有效状态的任何一种判断输入是否正确(所有状态返回false)
扩展内容
代码的编写 - 逻辑的完整性
判断value值是否为空
value==""||value==null
tooLong状态