js----表单、css、正则表达式

来源:互联网 发布:java软件下载网站 编辑:程序博客网 时间:2024/04/30 01:53

对表单的控制

getElementById等得到form对象后:

form对象中存放着表单元素,以name:obj名值对的形式存放,因此form.name就可以得到对应的对象。

form中还有elements属性,得到所有的表单元素,以数组形式存放,label等标签不在其中


表单元素的一些自身的方法和属性:

text:select()选中文本框

radio&&checkbox:通过name实现分组,form.name就可以得到数组,然后通过每个元素的checked属性(返回true或者false)判断是否选中

select:访问下面的选中的option对象可以用 select.options[select.selectedIndex]



对css的控制

style属性可以得到内联样式,但不是计算的样式,因为其优先级最高所以可以用来设置新值

要得到计算后的样式ie下是对象的currentStyle属性,ff下是全局函数getComputedStyle(obj,null)就可以得到obj的计算得到的样式



RegularExpression

参数:i---ignoreCase  g--global,这个表示全文匹配,在string.replace(regExp,newString)方法,配合属性lastIndex可以得到(用exec方法)一个串中所有匹配的子串,注意的是lastIndex最后匹配不到了会从头开始,因此得自己判断

量词:+等于{1,}          *等于{0,}    ?等于{0,1}        还有 {m,n}   {m,}    {m},和量词配合的惰性标识   ?

 范围:[a-zA-Z0-9], 减号左右两边只能是单字符 

分组:分组可以嵌套; 用exec方法就能返回数组,数组第一项肯定整个匹配串; 非捕获用?:标识,大部分用于|(或,或不用括号会把后面整个当成或的内容)带来的的二义性;


正向前瞻用(?=):括号里面的东西是不捕获的,和?:的区别是?:只是分组不捕获,而?:在exec得到的数组第一个元素,也就是整体匹配的子串中,?=的内容也是不捕获的。


反向引用:s.replace(regExp1,'$2--$1'),在//这种正则表达式中可以用\1表示前面的分组引用


对于string的支持:

replace(arg1,arg2)传一个字符串就是替换第一个,可以用正则加g标志替换所有的串


split()