我做了个动态添加行,获取其中一行数据保存成一个字符串,但是获取的时候就把整个表格的数据获取了。郁闷,在线等待答案  sub()函数就是获取数据的。下面是部分代码:
function add_item()
{
    
    var arr = new Array(5)    
    arr[0]="waName";
    arr[1]="waSn";
    arr[2]="waBirth";
    arr[3]="waDep"
    arr[4]="waSec";
        
    
  


    var table=document.getElementById("power");
    var rows=table.rows.length-1;
    var newrow=table.insertRow(rows+1);
    var num=rows+n;
    
    for (var i=0;i<table.rows[0].cells.length;i++)
{
 the_cell=newrow.insertCell(i);

    if(arr[i]=="waName")
   the_cell.innerHTML="<center><input type='text' name='column'  id='waName' value='waName' size='8' />&nbsp;<input type='button' value='查找' style='cursor:hand' onclick='openEmployeeControl()'></center> ";

     else if(arr[i]=="waSn")
   the_cell.innerHTML="<center><input type='text' name='column'  id='waSn' value='waSn' size='8'  /></center> ";

 else if(arr[i]=="waBirth")
   the_cell.innerHTML="<center><input type='text' name='column'  id='waBirth' value='' size='10'/></center> ";

 else if(arr[i]=="waDep")
   the_cell.innerHTML="<center><input type='text'  name='column' id='waDep' value='' size='10'/></center> ";

 else if(arr[i]=="waSec")
   the_cell.innerHTML="<center><input type='text' name='column' id='waSec' value='' size='10'/></center> ";
 

}
  

}
function sub()
{
    var pri = "";
var form = document.WageeFormBean;
var columnobj=document.getElementById("power"); for(var i=0;i<columnobj.rows.length-1;i++)
  { 
        window.alert("hj") ;
      
        var obj_sub =document.getElementsByName("column");  
        
        if(obj_sub.length != null)
        {
var subpri = "";
for(var t=0;t<obj_sub.length;t++)
{
    if(obj_sub[t].value!="")
{
  subpri = subpri + obj_sub[t].value+ ",";
}
                   
                    }
                    window.alert("ggg") ;
             }
            
             pri =pri +subpri;
             pri = pri + ";";
  }
            
         document.getElementById("waPri").value = pri;    
}<table width="3000" border="1" id="power" align="center" cellpadding="3" cellspacing="1"bordercolor="#799AE1" class="style1">
  
 <tr>
    <td  align="center" width="25"><html:text  property="coName"  value="姓名" size="16" ></html:text></td>
    
    <td  align="center" width="35"><html:text property="coSn"  value="员工号" size="8" ></html:text></td>
    
    ....
</tr>
 
</table>

解决方案 »

  1.   


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script>
    $(document).ready(function(){
    $(".message").each(function(){
    var name = $(this).children("td:eq(0)").text();
    var number = $(this).children("td:eq(1)").text();
    alert(name+"员工号" + number);
    });
    //取单个的话
    var name = $(".message:first").children("td:eq(0)").text();//取第一行的名字
    var number = $(".message:eq(1)").children("td:eq(0)").text();//取第二行的名字
    alert(name);
    });</script>
    </head>
    <body>
    <table width="300" border="1" id="power" align="center" cellpadding="3" cellspacing="1"bordercolor="#799AE1" class="style1">
      <tr>
        <td align="center" width="25">姓名</td>
        <td align="center" width="35">员工号</td>
      </tr>
      <tr class="message">
        <td>张三</td>
        <td>001</td>
      </tr>
      <tr class="message">
        <td>李四</td>
        <td>002</td>
      </tr>
    </table></body>
    </html>楼主你参考一下这个例子
      

  2.   

    二楼的 看不懂。
    我是想把动态添加行中的每行数据提取出来串成字符串。我做了循环,但是 
    “var obj_sub =document.getElementsByName("column");” 这行代码不知道怎么写我要提取一行数据,而不是全部。 
    for(var i=0;i<columnobj.rows.length-1;i++) 
    {  
    window.alert("hj") ; 
      
    var obj_sub =document.getElementsByName("column");   
      
    if(obj_sub.length != null) 

    var subpri = ""; 
    for(var t=0;t<obj_sub.length;t++) 

    if(obj_sub[t].value!="") 

    subpri = subpri + obj_sub[t].value+ ","; 

        
      } 
      window.alert("ggg") ; 
      } 
        
      pri =pri +subpri; 
      pri = pri + ";"; 
      

  3.   

    var obj_sub = document.getElementsByName("column")[0];
    一般这个函数取出来的是一个数组
      

  4.   

    document.getElementsByName("column");这么写是取body里所有的名叫column的
    控件了,   
    用childNode去获取input
      

  5.   

    建议你用jquery来做这个吧!绝对比你现在的方式简单,而且jquery比较简单,相信你看看就会使用了 
      

  6.   

    “var obj_sub =document.getElementsByName("column");” 这行代码不知道怎么写我要提取一行数据,而不是全部。  那么到底是那行呢?
      

  7.   

    用代码调试器跟一下不就知道obj_sub 里怎么获得每行数据怎么获得了吗。