比如这段<div id="box">
数据数据
</div>
<script>
  document.getElementById("box").innerHTML+="...";
</script>但是如果有两个需要插入的只能用class了吗?如<div id="box">
数据数据
</div>
<div id="box">
第二个数据内容
</div>
<script>
  document.getElementById("box").innerHTML+="...";
</script>怎么用class呢?

解决方案 »

  1.   

    用name吧。没见过用class的。jQuery里面好像有这个class选择器。
      

  2.   

    var getByClass=function(cla,scope,tag) {//指定tag后在ie中能更快的查找
    scope=scope || document;
    if(scope.getElementsByClassName)//非IE中,使用原生的效率应该更高
    return scope.getElementsByClassName(cla);
    tag=tag || "*";
    var els=scope.getElementsByTagName(tag);
    var length=els.length;
    for(var i=0,res=[],l=0,cur;i<length;i++) {
    cur=els[i];
    if(typeof(cur.className)!=="undefined" && cur.className.search("\\b"+cla+"\\b") != -1) {
    res[l++]=cur;//使用索引来访问数组
    }
    }
    return res;
    }
      

  3.   

    在同一页面中,标签的id 应该是唯一的 。
    所以尽量避免同一id的出现
      

  4.   

    先谢谢2楼的解决,id确实是唯一的,但是如果有多个标签都要使用同一个JS,那还是不应该用class吗?如果不用class,该如何解决呢?
      

  5.   

    <div class="box"> 
    数据数据 
    </div> 
    <div class="box"> 
    第二个数据内容 
    </div> 
    <script> 
      document.getElementByName("box").innerHTML+="..."; 
    </script> 
      

  6.   

    ID肯定不能重了,
    我也认为用name比较好
      

  7.   


    这个好像真不行,我上来就用这个了……找了几个帖子说是不能取得元素的CLASS
      

  8.   

    利用Name属性 
    var divName = document.getElementByName("box");
    divName[0].innerHTML+=""; 
    divName[1].innerHTML+=""; 
    控件数组
      

  9.   

    <div id="total">
    <div>
    数据数据
    </div>
    <div>
    第二个数据内容
    </div>
    </div>
    <script>
      $("#total div").each(...);
    </script> 
      

  10.   

    多个就用name ...                    
      

  11.   

    js
    id  唯一  getElementById()
    name 多个,可以重复  getElementByName();
    <div id="box"></div> 
    <div class="box1"></div>
    <div class="box2"></div>  jquery选择器中$("#box")相当于 (      <div id="box"></div>     )
    $(".box")相当于 (  <div class="box1"></div>   <div class="box2"></div>) 
      

  12.   

    name返回的是数组, 要取得元素之后再调用innerHTML
    var divName = document.getElementByName("box"); 
    divName[0].innerHTML+=""; 
    divName[1].innerHTML+=""; 
      

  13.   

       
    正确!
    如果你用CLASS的话 用jquery   里面有个$(".className");
    jquery语法HTML 代码:
    <div class="notMe">div class="notMe"</div>
    <div class="myClass">div class="myClass"</div>
    <span class="myClass">span class="myClass"</span>jQuery 代码:
    $(".myClass");结果:
    [ <div class="myClass">div class="myClass"</div>, <span class="myClass">span class="myClass"</span> ]