document.all用法

一.document.all是页面内所有元素的一个集合。例如: document.all(0)表示页面内第一个元素

二.document.all可以判断浏览器是否是IE

if(document.all){
alert("is   IE!");
}

三.也可以通过给某个元素设置id属性(id=aaaa),然后用document.all.aaaa调用该元素

四.案例:

代码1:

<input   name=aaa   value=aaa>
<input   id=bbb   value=bbb>
<script   language=Jscript>
alert(document.all.aaa.value)     //根据name取value
alert(document.all.bbb.value)     //根据id取   value
</script>

代码2:

但是常常name可以相同(如:用checkbox取用户的多项爱好的情况)

<input   name=aaa   value=a1>
<input   name=aaa   value=a2>
<input   id=bbb   value=bbb>
<script   language=Jscript>
alert(document.all.aaa(0).value)     //显示a1
alert(document.all.aaa(1).value)     //显示a2
alert(document.all.bbb(0).value)     //这行代码会失败
</script>

代码3:

理论上一个页面中的id是互不相同的,如果出现不同tags有相同的id

document.all.id   就会失败,就象这样:
<input   id=aaa   value=a1>
<input   id=aaa   value=a2>
<script   language=Jscript>
alert(document.all.aaa.value)     //显示   undefined   而不是   a1或者a2
</script>

代码4:

对于一个复杂的页面(代码很长,或者id是由程序自动产生),或着一个javascript初学者写的程序,很有可能出现两个tags有相同id的情况。
为了编程的时候不出错,我推荐这样的写法:

<input   id=aaa   value=aaa1>
<input   id=aaa   value=aaa2>
<input   name=bbb   value=bbb>
<input   name=bbb   value=bbb2>
<input   id=ccc   value=ccc>
<input   name=ddd   value=ddd>
<script   language=Jscript>
alert(document.all("aaa",0).value)
alert(document.all("aaa",1).value)
alert(document.all("bbb",0).value)
alert(document.all("bbb",1).value)
alert(document.all("ccc",0).value)
alert(document.all("ddd",0).value)
</script>
posted @ 2012-10-01 06:46  lines  阅读(305)  评论(0编辑  收藏  举报