document.xxName
document.all.xxID
document.getElementById("xxid")
document.getElementsByName("xxName")
注意:象div这样的标记,name属性是伪属性

解决方案 »

  1.   

    建议不要用document.all,因为这在非IE浏览器是不被支持的
    用document.getElementById("id"),或者document.getElementsByName("name")
      

  2.   

    转载:http://www.cnblogs.com/birdshome/archive/2005/01/31/99562.html
      

  3.   

    建议:
    如果是表单里面的控件,用:
    document.表单名.控件名
    如果是其它对象,用:
    document.getElementById(对象的id)
      

  4.   

    尽量不要使用name属性,想标识直接使用ID多好.但的确使用name很多时候取不到.
      

  5.   

    表单元素(form input textarea select)与框架元素(iframe frame)用 name
    这些元素都与表单(框架元素作用于form的target)提交有关, 在表单的接收页面只
    接收有name的元素, 赋ID的元素通过表单是接收不到值的, 你自己可以验证一下.
    有一个例外: A 可以赋 name 作为锚点, 也可以赋ID当然上述元素也可以赋ID值, 赋ID值的时候引用这些元素的方法就要变一下了.
    赋 name: document.formName.inputName    document.frames("frameName")
    赋 ID  : document.all.inputID           document.all.frameID只能赋ID不能赋name的元素:(除去与表单相关的元素都只能赋ID)
    body li table tr td th p div span pre dl dt dd font b 等等
      

  6.   

    其实如span等的控件也是可以附name的,只是不能像正常的name那样使用。只是相当于他的一个普通的属性。比如
    <body><h1>我要测试span可不可以有name属性</h1>
    <span id="northsnow" name="塞北的雪" style='color:ff0000;font-size:18;font-weight:bold'>northsnow</span>
    <span id="myButton" onclick="showName()">看看northsnow的名字</span>
    <script language="javascript">
      function showName()
     {
        var oNorthsnow=document.getElementById("northsnow");
        if(!oNorthsnow) return false;
        if(oNorthsnow.name)
        {
          if(oNorthsnow.name!='') alert(oNorthsnow.name);
         }
     } 
    </script> 
    </body>