9、表单验证

–1、表单选择器
语法 描述
:input 匹配所有input、textarea、select和button元素
:text 匹配所有单行文本框
:password 匹配所有密码框
:radio 匹配所有单项按钮
:checkbox 匹配所有复选框
:submit 匹配所有提交按钮
:image 匹配所有图像域
:reset 匹配所有重置按钮
:button 匹配所有按钮
:file 匹配所有文件域
:hidden 匹配所有不可见元素,或者type为hidden的元素
–2、表单属性过滤器
语法 描述
:enabled 匹配所有可用元素
:disabled 匹配所有不可用元素
:checked 匹配所有被选中元素(复选框、单项按钮、select中的option)
:selected 匹配所有选中的option元素
–3、表单验证常用的方法和事件
事件:
onblur:失去焦点,当光标离开某个文本框时触发
onfocus:获取焦点,当光标进入某个文本框时触发
方法:
blur():从文本域中移开焦点
focus():在文本域中设置焦点,即获得光标
select():选取文本域中的内容,突出显示输入区域的内容
–4、正则表达式
-1.正则表达式是一个描述字符模式的对象,它是由一些特殊的符号组成的,这些符号和在SQL Server中学过的通配符一样,其组成的字符模式用来匹配各种表达式。
-2.定义正则表达式
1.普通方式
语法:
var reg=/表达式/附加参数
表达式:一个字符串代表了某种规则,其中可以使用某些特殊字符来代表特殊的规则
附件参数:用来扩展表达式的含义,主要有以下三个参数。
g:代表可以进行全局匹配
i:代表不区分大小写匹配
m:代表可以进行多行匹配
2.构造函数
语法:
var reg=new RegExp(“表达式”,“附加参数”);
3.表达式的模式
1.简单模式
简单模式是指通过普通字符的组合来表达的模式。例如:
var reg=/china/;
var reg=/abc8/;
2.复合模式
复合模式是指含有通配符来表达的模式,这里的通配符与SQL Server中的通配符相似。例如:
var reg=/^\w+$/;
4.RegExp对象
方法 描述
exec() 检索字符中是正则表达式的匹配,返回找到的值,并确定其位置
test() 检索字符串中指定的值,返回true后false
5.test()方法用于检测一个字符串是否匹配某个模式,语法格式如下。
语法:
正则表达式对象实例.test(字符串)
6.String对象的方法
方法 描述
match() 在字符串内检索指定的值,找到一个或多个正则表达式的匹配
search() 检索与正则表达式相匹配的值
replace() 替换与正则表达式匹配的字符串
split() 把字符串分割为字符串数组
7.方法
1.match()方法:在字符串内检索指定的值,找到一个或多个正则表达式的匹配
语法:
字符串对象.match(searchString或regexpObject)
searchString是检索的字符串的值,regexpObject是规定要匹配模式的RegExp对象。
2.replace()方法
语法:
字符串对象.replace(RegExp对象或字符串,“替换的字符串”)
3.split()方法
语法:
字符串对象.split(分隔符,n)
8.RegExp对象的属性
属性 描述
global RegExp对象是否具有标志g
ignoreCase RegExp对象是否具有标志i
multiline RegExp对象是否具有标志m
9.正则表达式的常用符号
符号 描述
/…/ 代表一个模式的开始和结束
^ 匹配字符串的开始
$ 匹配字符串的结束
\s 任何空白字符
\S 任何非空白字符
\d 匹配一个数字字符,等价于[0~9]
\D 除了数字之外的任何字符,等价于[^0~9]
\w 匹配一个数字、下划线或字母字符,等价于[A-Za-z0-9]
\W 任何非单字字符,等价于[^a-zA-Z0-9_]
. 除了换行符之外的任意字符
10.正则表达式的重复字符
符号 描述
{n} 匹配前一项n次
{n,} 匹配前一项n次,或者多次
{n,m} 匹配前一项至少n次,但是不能超过m次
* 匹配前一项0次或多次,等价于{0,}
+ 匹配前一项1次或多次,等价于{1,}
? 匹配前一项0次或1次,也就是说前一项是可选的,等价于{0,1}
–5、HTML5新增加验证属性
属性 描述
placeholder 提供一种提示(hint),输入域为空时显示,获得焦点输入内容后消失
required 规定输入域不能为空
pattern 规定验证input域的模式(正则表达式)
–6、validityState对象
valueMissing:表单样式设置了required特征,则为必填项。如果必填项的值为空,就无法通过表单验证,valueMissing属性会返回true,否则返回false
typeMismatch:输入值与type类型不匹配。HTML5新增的表单类型如email、number、url等,都包含一个原始的类型验证。如果用户输入的内容与表单类型不符合,则typeMismatch属性将返回true,否则返回false
patternMismatch:输入值与pattern特征的正则表达式不匹配。如果输入的内容不符合pattern验证模式的规则,则patternMismatch属性将发回true,否则返回false。
tooLong:输入的内容超过了表单元素的maxLength 特性限定的字符长度。
rangeUnderflow:输入的值小于min特性的值。
rangeOverflow:输入的值大于max特性的值。
stepMismatch:输入的值不符合step特征所推算出的规则。
customError:使用自定义的验证错误提示信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值