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

解决方案 »

  1.   

    document.all可以判断浏览器是否是IE
    if(document.all){
     alert("is IE!");
    }
      

  2.   

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

  3.   

    你看看我的代码就明白了代码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>这样最安全.