for(var i=1;i <21;i++) 

  var j=i+10; 
  if(i <=9) 
  { 
    d.add(j,10," <span datafld='title" + i + "'> </span>","0"+i+".htm"); 
  } 
  else 
  { 
    d.add(j,10," <span datafld='title" + i + "'> </span>",i+".htm"); 
  } 
} 就是后面的那个红色部分赋值问题,如果"i.htm" 把变量i放在双引号里就变成字符了,如果放在外面i+".htm" 也不行

解决方案 »

  1.   

    i+".htm");赋值不了?吹牛吧
    你用这个
    var str = i+".htm";
    alert(str);看看
      

  2.   

    关键是d.add定义的接收的参数的格式是什么?
      

  3.   

    我觉得你写的是对的。。
    如果实在不行的话,建议像上面那样,前面多加个""
    for(var i=1;i <21;i++) 

      var j=i+10; 
      if(i <=9) 
      { 
        d.add(j,10," <span datafld='title" + i + "'> </span>","0"+i+".htm"); 
      } 
      else 
      { 
        d.add(j,10," <span datafld='title" + i + "'> </span>",""+i+".htm"); 
      } 

      

  4.   

    for(var i=1;i <21;i++) 

      var j=i+10; 
      if(i <=9) 
      { 
        d.add(j,10," <span datafld='title" + i + "'> </span>","0"+i+".htm"); 
      } 
      else 
      { 
        d.add(j,10," <span datafld='title" + i + "'> </span>",""+i+".htm"); 
      }