form对象厉害的地方:在与它也是个数组。负责存储表单中所有域。但它的数组元素并非利用数值索引存储,而是使用域独有,于name属性设定的标识符。
为什么每个表单域都能访问form对象?
有时候不行,但请记住,表单域能用于调用需要访问其他表单域的验证函数。此时,每个表单域里都能访问form对象成为方便访问其他表单域的关键。这个对象通常被传入验证函数,让函数快速抓出需要的域。
onblur只要域不再是焦点即触发onblur。
onblur其实是onfocus的相反事件。如果
onfocus在元素或表单域取得输入焦点时触发,
onblur是失去焦点时被触发。
可使用alert框呈现验证信息。
@alert框是种很烦人的验证问题通知方式
@被动式验证辅助比较直觉,也比较不会骚扰用
户
@在表单域对象里有个form特性,使用数组表示
了整份表单的域
JS有种非常强大的内置工具--正则表达式,专门设计用于匹配文本模式。正则表达式用于创建模式,而后应用于文本字符串,搜索匹配的部分...正则表达式总是以斜线起始和结束
. 匹配任何字符,换行符除外
@许多元字符均以反斜线起始....与围起正则表达
式的斜线非常不一样
\b 匹配任何数字字符
\w 匹配任何字母数字(字母或数字)字符
\s 匹配空格 (空格包括空白字符,space,tab
,换行符,return/enter)
^字符串需以模式起始 (匹配模式的字符串前不
能有其他文字)
$ 字符串需以模式结束 (模式需为字符串的最后一
个字符)
/\b\b\b/ 000 333 123
/^cat/ cat00 catTj
/mouse$/ 011mouse Tmouse
深入正则表达式:限定符
不是元字符的任何文字将于正则表达式里“照样匹配”。也就是说,/howard/可找出任何包含“howard”的字符串,另外,还有另一种正则表达式结构,称为限定符,可进一步把模式调整的更好。限定符前为子模式,限定符即应用在子模式,并控制子模式出现在模式里的次数。
/字符串/原样输出
* 限定符前的子模式必须出现0或多次(子模式为可选的,可出现任意次数)
+ 限定符前的子模式必须出现1或多次(子模式必须出现,可出现任意次数)
? 限定符前的子模式必须出现0或1次(子模式为可选的,若出现也只能出现一次)
{n} 限定符前的子模式必须出现恰好n次(控制子模式可以出现的次数)
( ) 集合字符或/和元字符,成为子模式(虽然括号在技术上不算限定符,但常用于归类子模式,就像平常区分数学表达式一样)
模式限定
限定符使得正则表达式设计比起只有元字符更为精确。不在直接重复子模式,限定符能指定子模式出现的精确次数。(限定符控制子模式出现于正则表达式里的次数)
/^\d{5}-\d{4}$/ == /^\d\d\d\d\d-\d\d\d\d$/
利用元字符与限定符们可以创建相当强大,几乎可匹配任何字符串内容的正则表达式
RegExp对象的test()方法用于检查字符串是否包含正则表达式模式。
匹配虽少次数与最多次数
限定符{}可接受数字,决定子模式出现在字符串的次数。{min,max}
/^\w{5,8}$/
字符串为5-8个数字字母组成。
选替
它与or逻辑运算符非常像
this|that 如果匹配子模式this或that,模式匹配就成功了 (选替(|)提供指定可供选择的匹配模式的便利方式)
在集合中匹配可选字符
字符类常常把非常着重与可选字符的规则建立到子模式中。你可以把字符类想成一组匹配单一字符的规则。
[ characterClass ] 字符类是一组匹配单一字符的正则表达式规则
在正则表达式的模式中,字符类提供控制可选字符的有效率方式。
/d[iu]g/ --- “dig” "dug"
/\$\d[\d\.]*/ “$3.50” "$5" "$19.95"
别忘记正则表达式特殊字符需要转义
在正则表达式里具有特殊意义的字符需要经过转义,才能把实际字符放在正则表达式里。下列字符前均需加上反斜线(\)做转义:[ 、\ 、 ^、 $、 . 、 | 、 ? 、 *、 + 、 ()。
为什么每个表单域都能访问form对象?
有时候不行,但请记住,表单域能用于调用需要访问其他表单域的验证函数。此时,每个表单域里都能访问form对象成为方便访问其他表单域的关键。这个对象通常被传入验证函数,让函数快速抓出需要的域。
onblur只要域不再是焦点即触发onblur。
onblur其实是onfocus的相反事件。如果
onfocus在元素或表单域取得输入焦点时触发,
onblur是失去焦点时被触发。
可使用alert框呈现验证信息。
@alert框是种很烦人的验证问题通知方式
@被动式验证辅助比较直觉,也比较不会骚扰用
户
@在表单域对象里有个form特性,使用数组表示
了整份表单的域
JS有种非常强大的内置工具--正则表达式,专门设计用于匹配文本模式。正则表达式用于创建模式,而后应用于文本字符串,搜索匹配的部分...正则表达式总是以斜线起始和结束
. 匹配任何字符,换行符除外
@许多元字符均以反斜线起始....与围起正则表达
式的斜线非常不一样
\b 匹配任何数字字符
\w 匹配任何字母数字(字母或数字)字符
\s 匹配空格 (空格包括空白字符,space,tab
,换行符,return/enter)
^字符串需以模式起始 (匹配模式的字符串前不
能有其他文字)
$ 字符串需以模式结束 (模式需为字符串的最后一
个字符)
/\b\b\b/ 000 333 123
/^cat/ cat00 catTj
/mouse$/ 011mouse Tmouse
深入正则表达式:限定符
不是元字符的任何文字将于正则表达式里“照样匹配”。也就是说,/howard/可找出任何包含“howard”的字符串,另外,还有另一种正则表达式结构,称为限定符,可进一步把模式调整的更好。限定符前为子模式,限定符即应用在子模式,并控制子模式出现在模式里的次数。
/字符串/原样输出
* 限定符前的子模式必须出现0或多次(子模式为可选的,可出现任意次数)
+ 限定符前的子模式必须出现1或多次(子模式必须出现,可出现任意次数)
? 限定符前的子模式必须出现0或1次(子模式为可选的,若出现也只能出现一次)
{n} 限定符前的子模式必须出现恰好n次(控制子模式可以出现的次数)
( ) 集合字符或/和元字符,成为子模式(虽然括号在技术上不算限定符,但常用于归类子模式,就像平常区分数学表达式一样)
模式限定
限定符使得正则表达式设计比起只有元字符更为精确。不在直接重复子模式,限定符能指定子模式出现的精确次数。(限定符控制子模式出现于正则表达式里的次数)
/^\d{5}-\d{4}$/ == /^\d\d\d\d\d-\d\d\d\d$/
利用元字符与限定符们可以创建相当强大,几乎可匹配任何字符串内容的正则表达式
RegExp对象的test()方法用于检查字符串是否包含正则表达式模式。
匹配虽少次数与最多次数
限定符{}可接受数字,决定子模式出现在字符串的次数。{min,max}
/^\w{5,8}$/
字符串为5-8个数字字母组成。
选替
它与or逻辑运算符非常像
this|that 如果匹配子模式this或that,模式匹配就成功了 (选替(|)提供指定可供选择的匹配模式的便利方式)
在集合中匹配可选字符
字符类常常把非常着重与可选字符的规则建立到子模式中。你可以把字符类想成一组匹配单一字符的规则。
[ characterClass ] 字符类是一组匹配单一字符的正则表达式规则
在正则表达式的模式中,字符类提供控制可选字符的有效率方式。
/d[iu]g/ --- “dig” "dug"
/\$\d[\d\.]*/ “$3.50” "$5" "$19.95"
别忘记正则表达式特殊字符需要转义
在正则表达式里具有特殊意义的字符需要经过转义,才能把实际字符放在正则表达式里。下列字符前均需加上反斜线(\)做转义:[ 、\ 、 ^、 $、 . 、 | 、 ? 、 *、 + 、 ()。