<html>
<title>
</title>
<head>
<script language="javascript" type="text/javascript">
 var i = 0;
 function additem(){
  if(i <10){
   var text = document.getElementById('Hidden1').value;
   var text2 = document.getElementById('Hidden2').value;
   var text3 = document.getElementById('Hidden3').value;
   document.getElementById('div').innerHTML += '<input type="text" id="a'+i+'" name="a'+i+'"/><input type="text" id="b'+i+'" name="b'+i+'"/><input type="text" id="c'+i+'" name="c'+i+'"/><br>';   document.getElementById('a'+i).value = text;
   document.getElementById('Hidden1').value = '';
   document.getElementById('Hidden1').focus();   document.getElementById('b'+i).value = text2;
   document.getElementById('Hidden2').value = '';
   document.getElementById('Hidden2').focus();
   document.getElementById('c'+i).value = text3;   document.getElementById('Hidden3').value = '';
   document.getElementById('Hidden3').focus();
   i++;
  }
 }
 
</script>
</head>
<body >
 <form id="form1" >
<table id="tb"></table>
<div id='div'> </div>
<input  type="hidden" name="subName" id="sunName"/>
    <input id="Hidden1" name="Hidden1" type="text"  /><br>
 <input id="Hidden2" name="Hidden2" type="text"  /><br>
 <input id="Hidden3" name="Hidden3" type="text"  /><br>
 <input name="button" type="button" onclick='additem()' value="add"/>
  <input type="submit" name="submit" onclick="getsub()" value=" 确定保存 " /> 
 
    </form>
</body></html>
--------------------------------
 我知道把他们存到数组中 完了获取,我想知道更具体的方法 谢谢
我用的方法是   document.getElementsByTagName("input"); 可是取出来的值全是"undefined" 并且个数貌似也不对
麻烦高手帮看下哪里出错了,或者给出更好的方法 小弟在此谢谢了!
 function getsub()
    {
       var txtlist = document.getElementsByTagName("input");
      var names = "";
for(var i=0;i<txtlist.length;i++){
   names+=txtlist.value+","; //把value值组合,并以','分割
}
alert(names);
//将所有的name值放入隐藏域(id=subName,name=subName)
document.getElementById("subName").value=names; 
    }

</script>

解决方案 »

  1.   

    1、JS中,全局的var i= 0; 与for(var i=0;i <txtlist.length;i++){ 中的i=0是否会冲突
    2、<input  type="hidden" name="subName" id="sunName"/> 
    ID指定错误
    //将所有的name值放入隐藏域(id=subName,name=subName) 
    document.getElementById("subName").value=names; 
    时会找不到3、取出来的值全是"undefined"
    你的整个页面都没有用“input”做为TAG的表单元素,当然找不到
    既然你在填加item的时候可以得到那些值,那就可以在i++之前将这些值以“,”分隔合并,并设置在页面的subName隐藏域中,这样当点击“确定保存”时,就可以直接得到已经连接好的值了
      

  2.   

    你平时怎么取酒怎么取啊,不过你在新增加的文本框的时候,注意让它的name属性不为空啊!
      

  3.   

    document.getElementsByTagName("input"); 取出来的是数组,要取值可以
    document.getElementsByTagName("input")[i];就可以取到相应的对象了
      

  4.   


    function getsub() { 
          var txtlist = document.getElementsByTagName("input"); //返回的事数组
          var names = ""; 
          for(var i=0;i <txtlist.length;i++){ 
             /// names+=txtlist.value+","; //如下改动
               names+=txtlist[i].value+","; // 
           }
    }