我的程序是日历表, 1-31号我是动态生的小div,我这是这么写的,假如外面大div的拿到了,肯给他赋给obj,我往它里添加小div, obj.innerHTML = innerHTML + "<div></div>".我写了个for,可是无法给每个id赋上不同的值,因为id只能是唯一的,不能重复,我给它们id是为了改变他的样式。请问如何做呢? for (var i = 1; i <= 42; i++) {
      if (i <= 31) {
        cWin.innerHTML = cWin.innerHTML + "<div>" + i + "</div>";
      } else {
        cWin.innerHTML = cWin.innerHTML + "<div>" + temp + "</div>";
        temp++;
      }
    }

解决方案 »

  1.   

     for (var i = 1; i <= 42; i++) {
          if (i <= 31) {
            cWin.innerHTML = cWin.innerHTML + "<div id='inner" + i + "'>"+i+"</div>";
          } else {
            cWin.innerHTML = cWin.innerHTML + "<div id='inner" + i + "'>"+ temp + "</div>";
            temp++;
          }
        
      

  2.   

    做过日历的同好,能加下 我QQ吗,问题 不上,在这问不明白。。我QQ365217575 今天一天在线,等待。
      

  3.   


    var cc = document.getElementById("这里写啥");
      

  4.   

    document.getElementById("innern")
    n为数字,比如1,2,3....
      

  5.   


    ("innern")你这么写不是写死了吗,  n改变不了了,他当成字符串常量了
      

  6.   

    我的意思是,在创建div的同时,我就要改变他的CSS样式,除了用ID,还有别的方法 吗,有别的方法也行。
      

  7.   

    document.getElementById("inner1")
    document.getElementById("inner2")
    ...
      

  8.   


    你这几句话我是写在for里的,我这样写的document.getElementById("inner"+i);
    可是得不到对象,返回给我的是null
      

  9.   


    <div id="test" ></div>
    <script language="javascript">
    var cWin=document.getElementById("test");
    var temp=0;
     for (var i = 1; i <= 42; i++) {
          if (i <= 31) {
            cWin.innerHTML = cWin.innerHTML + "<div id='inner"+i+"'>" + i + "</div>";
          } else {
            cWin.innerHTML = cWin.innerHTML + "<div>" + temp + "</div>";
            temp++;
          }
        }
    for(var j=1;j<4;j++){
    var inner=document.getElementById("inner"+j);
    alert(inner.innerHTML);
    }
    </script>
      

  10.   

    觉得最好使用创建节点的方法来做 ;for(var i ;i<40 ;i++){
    var node=document.creatElement("div");
    node.id=(i<32)?('inner'+i):"";
     cWin.appendChild(node);
    }