<table border=1>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
<div id=row1></div>
<div id=row2></div>
<div id=row3></div>
<div id=col1></div>
<div id=col2></div>
<div id=col3></div> 
<script language=JavaScript>
var i,j,l=0,rv,cv;
for(i=0;i<3;i++)
  {rv=0;
   cv=0;
   l=i;
   for(j=0;j<3;j++,l+=3)
     {rv+=parseInt(document.getElementsByTagName("TABLE")[0].rows[i].cells[j].innerText);
      cv+=parseInt(document.getElementsByTagName("TABLE")[0].cells[l].innerText);
     }
  eval("row"+(i+1)).innerText="row"+(i+1)+"的和是:"+rv;
  eval("col"+(i+1)).innerText="col"+(i+1)+"的和是:"+cv;
  }
</script>

解决方案 »

  1.   

    function sumColumn(fst/*开始的行数*/, n/*统计的列数*/) {
      var s = 0;
      var rs = tbl.rows;
      for (var i = fst, m = rs.length; i < m; i ++) {
          s += parseInt(rs(i).cells(n).innerText.replace(',', ''));
      }
      retuen s;
    }
      

  2.   

    <html>
    <head>
    <SCRIPT LANGUAGE="JavaScript">
    function DoSum()
    {
     var totalsum;
     totalsum=0;
     for (var i=0;i<form.elements.length;i++)
      {var e = form.elements[i];
        if(e.name.substring(0,3)=='Num')
        {if(!isNaN(e.value))
         {totalsum=totalsum+e.value.toString(10)
         }
        }
      }
    }
    function addRow() {
    myTable.outerHTML=myTable.outerHTML.replace(/<\/table>/i,(myTable.rows[myTable.rows.length-1].outerHTML)+"</table>");
    myTable.rows[myTable.rows.length-1].cells[0].innerText++;
    }
    function tot(obj)
    {
    obj.parentNode.parentNode.childNodes(4).childNodes(0).value=parseInt(obj.parentNode.parentNode.childNodes(1).childNodes(0).value)+parseInt(obj.parentNode.parentNode.childNodes(2).childNodes(0).value)+parseInt(obj.parentNode.parentNode.childNodes(3).childNodes(0).value);
    }
    </SCRIPT></head>
    <body bgcolor="#FFFFFF" text="#000000">
    <form name="form1" method="post" action="requestform.asp">
    <table width="98%" border="1" cellspacing="0" cellpadding="0" bordercolor="#ffcc00" align="center" id="myTable">
    <tr><th>字段1<th>字段2<th>字段3<th>字段4</th><th>和</th></tr>
    <tr>
    <td>1</td>
    <td><input onfocus="tot(this)" type=text name=r1c1 size=20></td>
    <td><input onfocus="tot(this)" onkeyup="this.value=this.value.replace(/\D/g,'')"  onafterpaste="this.value=this.value.replace(/\D/g,'')"  type=text name="r1c2" size=20 > </td>
    <td><input onfocus="tot(this)" type=text name=r1c3 size=20></td>
    <td><input type=text name=GetSum size=20 readOnly></td>
    </tr>
    </table>
    <input type=button onclick="addRow()" value=新增>
    <input name="aa" type="submit">
    </form>
    </body>
    </html>
      

  3.   

    <html>
    <head>
    <SCRIPT LANGUAGE="JavaScript">
    function DoSum()
    {
     var totalsum;
     totalsum=0;
     for (var i=0;i<form.elements.length;i++)
      {var e = form.elements[i];
        if(e.name.substring(0,3)=='Num')
        {if(!isNaN(e.value))
         {totalsum=totalsum+e.value.toString(10)
         }
        }
      }
    }
    function addRow() {
    myTable.outerHTML=myTable.outerHTML.replace(/<\/table>/i,(myTable.rows[myTable.rows.length-1].outerHTML)+"</table>");
    myTable.rows[myTable.rows.length-1].cells[0].innerText++;
    }
    function tot(obj)
    {
    obj.parentNode.parentNode.childNodes(4).childNodes(0).value=parseInt(obj.parentNode.parentNode.childNodes(1).childNodes(0).value)+parseInt(obj.parentNode.parentNode.childNodes(2).childNodes(0).value)+parseInt(obj.parentNode.parentNode.childNodes(3).childNodes(0).value);
    }
    </SCRIPT></head>
    <body bgcolor="#FFFFFF" text="#000000">
    <form name="form1" method="post" action="requestformab.asp">
    <table width="98%" border="1" cellspacing="0" cellpadding="0" bordercolor="#ffcc00" align="center" id="myTable">
    <tr><th>字段1<th>字段2<th>字段3<th>字段4</th><th>和</th></tr>
    <tr>
    <td>1</td>
    <td><input onfocus="tot(this)" type=text name=r1c1 size=20></td>
    <td><input onfocus="tot(this)" onkeyup="this.value=this.value.replace(/\D/g,'')"  onafterpaste="this.value=this.value.replace(/\D/g,'')"  type=text name="r1c2" size=20 > </td>
    <td><input onfocus="tot(this)" type=text name=r1c3 size=20></td>
    <td></td>
    </tr>
    </table>
    <input type=button onclick="addRow()" value=新增>
    <input name="aa" type="submit"></form>
    sumtext第三列的结果,注意只求第三列<input type=text name=GetSum size=20 readOnly>
    </body>
    </html>
      

  4.   

    <html>
    <head>
    <SCRIPT LANGUAGE="JavaScript">
    function DoSum()
    {
     var totalsum;
     totalsum=0;
     for (var i=0;i<form.elements.length;i++)
      {var e = form.elements[i];
        if(e.name.substring(0,3)=='Num')
        {if(!isNaN(e.value))
         {totalsum=totalsum+e.value.toString(10)
         }
        }
      }
    }
    function addRow() {
    myTable.outerHTML=myTable.outerHTML.replace(/<\/table>/i,(myTable.rows[myTable.rows.length-1].outerHTML)+"</table>");
    myTable.rows[myTable.rows.length-1].cells[0].innerText++;
    }
    function tot(obj)
    {
    sum=0;
    for(i=0;i<document.all.r1c3.length;i++)
    {
    sum+=parseInt(document.all.r1c3[i].value);
    }
    document.all.GetSum.value=sum;
    }
    </SCRIPT></head>
    <body bgcolor="#FFFFFF" text="#000000">
    <form name="form1" method="post" action="requestformab.asp">
    <table width="98%" border="1" cellspacing="0" cellpadding="0" bordercolor="#ffcc00" align="center" id="myTable">
    <tr><th>字段1<th>字段2<th>字段3<th>字段4</th><th>和</th></tr>
    <tr>
    <td>1</td>
    <td><input type=text name=r1c1 size=20></td>
    <td><input onkeyup="this.value=this.value.replace(/\D/g,'')"  onafterpaste="this.value=this.value.replace(/\D/g,'')"  type=text name="r1c2" size=20 > </td>
    <td><input onfocus="tot(this)" type=text name=r1c3 size=20></td>
    <td></td>
    </tr>
    </table>
    <input type=button onclick="addRow()" value=新增>
    <input name="aa" type="submit"></form>
    sumtext第三列的结果,注意只求第三列<input type=text name=GetSum size=20 readOnly>
    </body>
    </html>
      

  5.   

    <html>
    <head>
    <SCRIPT LANGUAGE="JavaScript">
    function DoSum()
    {
     var totalsum;
     totalsum=0;
     for (var i=0;i<form.elements.length;i++)
      {var e = form.elements[i];
        if(e.name.substring(0,3)=='Num')
        {if(!isNaN(e.value))
         {totalsum=totalsum+e.value.toString(10)
         }
        }
      }
    }
    function addRow() {
    myTable.outerHTML=myTable.outerHTML.replace(/<\/table>/i,(myTable.rows[myTable.rows.length-1].outerHTML)+"</table>");
    myTable.rows[myTable.rows.length-1].cells[0].innerText++;
    document.all.r1c1[myTable.rows.length-2].value="";
    document.all.r1c2[myTable.rows.length-2].value="";
    document.all.r1c3[myTable.rows.length-2].value="";
    }
    function tot(obj)
    {
    sum=0;
    for(i=0;i<document.all.r1c3.length;i++)
    {
    sum+=parseInt(document.all.r1c3[i].value);
    }
    document.all.GetSum.value=sum;
    }
    </SCRIPT></head>
    <body bgcolor="#FFFFFF" text="#000000">
    <form name="form1" method="post" action="requestformab.asp">
    <table width="98%" border="1" cellspacing="0" cellpadding="0" bordercolor="#ffcc00" align="center" id="myTable">
    <tr><th>字段1<th>字段2<th>字段3<th>字段4</th></tr>
    <tr>
    <td>1</td>
    <td><input type=text name=r1c1 size=20></td>
    <td><input onkeyup="this.value=this.value.replace(/\D/g,'')"  onafterpaste="this.value=this.value.replace(/\D/g,'')"  type=text name="r1c2" size=20 > </td>
    <td><input onfocus="tot(this)" type=text name=r1c3 size=20></td>
    </tr>
    </table>
    <input type=button onclick="addRow()" value=新增>
    <input name="aa" type="submit"></form>
    sumtext第三列的结果,注意只求第三列<input type=text name=GetSum size=20 readOnly>
    </body>
    </html>
      

  6.   

    <html>
    <head>
    <SCRIPT LANGUAGE="JavaScript">
    function DoSum()
    {
     var totalsum;
     totalsum=0;
     for (var i=0;i<form.elements.length;i++)
      {var e = form.elements[i];
        if(e.name.substring(0,3)=='Num')
        {if(!isNaN(e.value))
         {totalsum=totalsum+e.value.toString(10)
         }
        }
      }
    }
    function addRow() {
    myTable.outerHTML=myTable.outerHTML.replace(/<\/table>/i,(myTable.rows[myTable.rows.length-1].outerHTML)+"</table>");
    myTable.rows[myTable.rows.length-1].cells[0].innerText++;
    document.all.r1c1[myTable.rows.length-2].value="";
    document.all.r1c2[myTable.rows.length-2].value="";
    document.all.r1c3[myTable.rows.length-2].value="";
    }
    function tot(obj)
    {
    sum=0;
    for(i=0;i<document.all.r1c2.length;i++)
    {
    if(document.all.r1c2[i].value != "")
    sum+=parseInt(document.all.r1c2[i].value);
    }
    document.all.GetSum.value=sum;
    }
    </SCRIPT></head>
    <body bgcolor="#FFFFFF" text="#000000">
    <form name="form1" method="post" action="requestformab.asp">
    <table width="98%" border="1" cellspacing="0" cellpadding="0" bordercolor="#ffcc00" align="center" id="myTable">
    <tr><th>字段1<th>字段2<th>字段3<th>字段4</th></tr>
    <tr>
    <td>1</td>
    <td><input type=text name=r1c1 size=20></td>
    <td><input onkeyup="this.value=this.value.replace(/\D/g,'')"  onafterpaste="this.value=this.value.replace(/\D/g,'')"  type=text name="r1c2" size=20 > </td>
    <td><input onfocus="tot(this)" type=text name=r1c3 size=20></td>
    </tr>
    </table>
    <input type=button onclick="addRow()" value=新增>
    <input name="aa" type="submit"></form>
    sumtext第三列的结果,注意只求第三列<input type=text name=GetSum size=20 readOnly>
    </body>
    </html>