<script type="text/javascript">
var i = '<%=i%>';    
function add_row(){ 
  i++;   
  newRow=document.all.gys.insertRow(-1);   //这里是-1表示从尾部插入,如果值为0表示从头部插入。
  newcell=newRow.insertCell();
  newcell.innerHTML='<input name="NAME+i" type="text"/>';
}   
</script>代码如上所示,因为i是变量,我要得到name="NAME1",name='NAME2'这样的效果,应该如何修改newcell.innerHTML='<input name="NAME+i" type="text"/>';

解决方案 »

  1.   

    <script type="text/javascript">
    var i = '<%=i%>';   
    function add_row(){  
      i++;   
      newRow=document.all.gys.insertRow(-1); 
      newcell=newRow.insertCell();
      var name="NAME"+i;
      newcell.innerHTML='<input name="+name+" type="text"/>';
    }   
    </script>
      

  2.   

    顶这个   你都将name="name+1" 那你的id就永远成了name+1  "name+1"成了一个字符串了 应该是1楼这样
      

  3.   

    newcell.innerHTML='<input id="nameid" type="text"/>';var newcellid=document.getElementById('nameid');   
        newcellid.setAttribute('name','name'+i);  
      

  4.   

    <script type="text/javascript">
    var i = '<%=i%>';  
    function add_row(){ 
      i++;  
      newRow=document.all.gys.insertRow(-1); //这里是-1表示从尾部插入,如果值为0表示从头部插入。
      newcell=newRow.insertCell();
      newcell.innerHTML='<input name="NAME'+i+'" type="text"/>';
    }  
    </script>
      

  5.   

    额外建议 document.all 最好还是不用,只适应于IE
    采用标准的DOM 获取元素
      

  6.   

    <script type="text/javascript">
    var i = '<%=i%>';   
    function add_row(){   
      i++;   
      newRow=document.all.gys.insertRow(-1);  
      newcell=newRow.insertCell();
      var name="NAME"+i;
      newcell.innerHTML='<input name="'+name+'" type="text"/>';
    }   
    </script>
      

  7.   

    谢谢各位,最后采用wwwbbbecit的办法问题解决,thc1987的修改解决了一楼的BUG.