看不到页面只能猜着做,看看吧:
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<META http-equiv="Content-Type" content="text/html; Charset=gbk">
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<title>VML_Clock</title>
<STYLE>
</STYLE>
<script>
function addRow()
{
var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
var tb = document.getElementById("tb");
var tr = tb.insertRow(rowIndex + 1);
var td = tr.insertCell();
td = tr.insertCell();
td.innerHTML = "名称";
td = tr.insertCell();
td.innerHTML = "斤";
td = tr.insertCell();
td.innerHTML = "1";
td = tr.insertCell();
td.innerHTML = "<span style=\"cursor:hand;\" onclick=\"addRow()\">++</span> <span style=\"cursor:hand;\" onclick=\"delRow()\">--</span>";
for (var i = rowIndex + 1; i < tb.rows.length; i++)
{
tb.rows(i).cells(0).innerHTML = i;
}
}
function delRow()
{
var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
event.srcElement.parentNode.parentNode.removeNode(true);
for (var i = rowIndex; i < tb.rows.length; i++)
{
tb.rows(i).cells(0).innerHTML = i;
}
}
</script>
</head><body>
<table id="tb">
<tr><td>No.</td><td>项目名称</td><td>单位</td><td>数量</td><td>显示</td></tr>
<tr><td>1</td><td>测试一</td><td>斤</td><td>2</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
<tr><td>2</td><td>测试二</td><td>斤</td><td>3</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
<tr><td>3</td><td>测试三</td><td>斤</td><td>数量</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
</table></body>
</html>

解决方案 »

  1.   

    楼上的兄弟做复杂了,可以修改下
    <html xmlns:v="urn:schemas-microsoft-com:vml"
    xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns="http://www.w3.org/TR/REC-html40">
    <head>
    <META http-equiv="Content-Type" content="text/html; Charset=gbk">
    <META HTTP-EQUIV="pragma" CONTENT="no-cache">
    <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
    <title>VML_Clock</title>
    <STYLE>
    </STYLE>
    <script>
    function addRow(obj)
    {
    var objTR=obj.parentNode.parentNode
    var rowIndex=objTR.rowIndex
    objTR.parentNode.insertBefore(objTR.cloneNode(true),objTR)
    }
    function delRow(obj)
    {
    obj.parentNode.parentNode.removeNode(true)
    }
    </script>
    </head><body>
    <table id="tb">
    <tr><td>No.</td><td>项目名称</td><td>单位</td><td>数量</td><td>显示</td></tr>
    <tr><td>1</td><td>测试一</td><td>斤</td><td>2</td><td><span style="cursor:hand;" onclick="addRow(this)">++</span> <span style="cursor:hand;" onclick="delRow(this)">--</span></td></tr>
    <tr><td>2</td><td>测试二</td><td>斤</td><td>3</td><td><span style="cursor:hand;" onclick="addRow(this)">++</span> <span style="cursor:hand;" onclick="delRow(this)">--</span></td></tr>
    <tr><td>3</td><td>测试三</td><td>斤</td><td>数量</td><td><span style="cursor:hand;" onclick="addRow(this)">++</span> <span style="cursor:hand;" onclick="delRow(this)">--</span></td></tr>
    </table></body>
    </html>
      

  2.   

    谢谢adverse(King) and hbhbhbhbhb1021(天外水火(我要多努力)) ,,还有一个问题
    假如我++了很多下,我把他们放在一个表单中,但我提交到下一页面(post.php)的时候,我怎么能判断出有多少行呢?因为我要把每一行的值取出来!
      

  3.   

    单纯的table是提不上去的。要都变成input才行。
    可以把每一列的所有对象都取同样的name,到另一页可以通过name把所有的都取出来。然后通过长度判断。
      

  4.   

    增加列的时候可以增加一个<input type="hidden" />来收集数据~~`
      

  5.   

    可以用hidden也可以这样:
    <html>
    <head>
    <META http-equiv="Content-Type" content="text/html; charset=gbk">
    <META HTTP-EQUIV="pragma" CONTENT="no-cache">
    <title></title>
    <STYLE>
    </STYLE>
    <script>
    function addRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    var tb = document.getElementById("tb");
    var tr = tb.insertRow(rowIndex + 1);
    var td = tr.insertCell();
    td = tr.insertCell();
    td.innerHTML = "<input name='mc' value=\"名称\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='dw' value=\"斤\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='sl' value=\"1\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<span style=\"cursor:hand;\" onclick=\"addRow()\">++</span> <span style=\"cursor:hand;\" onclick=\"delRow()\">--</span>";
    for (var i = rowIndex + 1; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    function delRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    event.srcElement.parentNode.parentNode.removeNode(true);
    for (var i = rowIndex; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    </script>
    </head><body>
    <table id="tb">
    <tr><td>No.</td><td>项目名称</td><td>单位</td><td>数量</td><td>显示</td></tr>
    <tr><td>1</td><td>测试一</td><td>斤</td><td>2</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr><td>2</td><td>测试二</td><td>斤</td><td>3</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr><td>3</td><td>测试三</td><td>斤</td><td>数量</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    </table>
    </body>
    </html>
      

  6.   

    谢谢adverse(King),谢谢让我有了思路。js基础很差。还有一个问题想请教:td.innerHTML = "<input name='mc' value=\"名称\" style='border:0px;' readonly>";我想让value=\"名称+No.\",例如:第5行value=\"名称5\"我试了好久都没弄明白。。
      

  7.   

    var no=3
    td.innerHTML = "<input name='mc' value='名称"+no+"' style='border:0px;' readonly>"
      

  8.   

    mingxuan3000(铭轩),我不是这个意思,No.   项目名称                   单位    数量           显示 
    1      测试一                     斤       2          ++ --  
    2                                                     ++ --  
    3      测试二(vulue=名称3)      斤       3          ++ --  
    4      测试四(vulue=名称4)                          ++ --  
    td.innerHTML = "<input name='mc' value='名称"+no+"' style='border:0px;' readonly>"
    这个是需要和No.对应的。
      

  9.   

    <html>
    <head>
    <META http-equiv="Content-Type" content="text/html; charset=gbk">
    <META HTTP-EQUIV="pragma" CONTENT="no-cache">
    <title></title>
    <STYLE>
    </STYLE>
    <script>
    function addRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    var tb = document.getElementById("tb");
    var tr = tb.insertRow(rowIndex + 1);
    var td = tr.insertCell();
    td = tr.insertCell();
    td.innerHTML = "<input name='mc' value='nnn"+(rowIndex + 1)+"' style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='dw' value=\"nnn\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='sl' value=\"n\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<span style=\"cursor:hand;\" onclick=\"addRow()\">++</span> <span style=\"cursor:hand;\" onclick=\"delRow()\">--</span>";
    for (var i = rowIndex + 1; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    function delRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    event.srcElement.parentNode.parentNode.removeNode(true);
    for (var i = rowIndex; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    </script>
    </head><body>
    <table id="tb">
    <tr><td>No.</td><td>aaaa</td><td>bbbb</td><td>cccc</td><td>dddd</td></tr>
    <tr> <td>1</td><td>a</td><td>a</td><td>2</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr> <td>2</td><td>a</td><td>a</td><td>3</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr> <td>3</td><td>a</td><td>a</td><td>b</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    </table>
    </body>
    </html>
      

  10.   

    谢谢mingxuan3000(铭轩),有一个问题:当我点击++是,NO.数字变了,但aaaa没变No.           aaaa               bbbb              cccc            dddd 
    1              a                  a                  2              ++ -- 
    2              nn2                nnn                n              ++ -- 
    3              nn2(应该为nn3)     nnn                n              ++ -- 
    4              nn2(应该为nn4)     nnn                n              ++ -- 
    5              nn2(应该为nn5)     nnn                n              ++ -- 
    6              a                  a                  2              ++ -- 7              a                  a                  2              ++ --
      

  11.   

    <html>
    <head>
    <META http-equiv="Content-Type" content="text/html; charset=gbk">
    <META HTTP-EQUIV="pragma" CONTENT="no-cache">
    <title></title>
    <STYLE>
    </STYLE>
    <script>
    function addRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    var tb = document.getElementById("tb");
    var tr = tb.insertRow(rowIndex + 1);
    var td = tr.insertCell();
    td = tr.insertCell();
    //td.innerHTML = "<input name='mc' value=\"名称\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='dw' value=\"斤\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='sl' value=\"1\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<span style=\"cursor:hand;\" onclick=\"addRow()\">++</span> <span style=\"cursor:hand;\" onclick=\"delRow()\">--</span>";
    for (var i = rowIndex + 1; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    tb.rows(i).cells(1).innerHTML = "<input name='mc' value=\"名称"+i+"\" style='border:0px;' readonly>";
    }
    }
    function delRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    event.srcElement.parentNode.parentNode.removeNode(true);
    for (var i = rowIndex; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    tb.rows(i).cells(1).innerHTML = "<input name='mc' value=\"名称"+i+"\" style='border:0px;' readonly>";
    }
    }
    </script>
    </head><body>
    <table id="tb">
    <tr><td>No.</td><td>项目名称</td><td>单位</td><td>数量</td><td>显示</td></tr>
    <tr><td>1</td><td>名称1</td><td>斤</td><td>2</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr><td>2</td><td>名称2</td><td>斤</td><td>3</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr><td>3</td><td>名称3</td><td>斤</td><td>数量</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    </table>
    </body>
    </html>
      

  12.   

    <html>
    <head><title></title>
    <style>
    TD
    {
    border:1 solid #999999;
    padding:1;
    Text-Align:center;
    }
    Table
    {
     border:1 solid #999999;
     border-collapse:collapse;
    }
    </style>
    <script>
    function addline(obj)
    {
    var lineElement=obj.parentElement;
    while(true){if(lineElement.tagName=="TR")break;else lineElement=lineElement.parentElement;}
    var tb=lineElement.parentElement;
    var newline=tb.insertRow(lineElement.sectionRowIndex+1);
    for(var i=0;i<lineElement.cells.length;i++)
    {
    var td=newline.insertCell(-1);
    td.innerHTML=lineElement.cells[i].innerHTML;
    }
    for(var i=1;i<tb.rows.length;i++)
    {
    tb.rows[i].cells[0].innerHTML=i;
    }

    }
    function delline(obj)
    {
    var lineElement=obj.parentElement;
    while(true){if(lineElement.tagName=="TR")break;else lineElement=lineElement.parentElement;}
    var tb=lineElement.parentElement;
    tb.deleteRow(lineElement.sectionRowIndex);
    }
    </script>
    </head>
    <body>
    <table cellpadding=0 CELLSPACING=0>
    <tr>
    <td>No.</td>
    <td>项目名称</td>
    <td>单位</td>
    <td>数量</td>
    <td>显示</td>
    </tr>
    <tr>
    <td>1</td>
    <td>测试一</td>
    <td>单位</td>
    <td>2</td>
    <td><a href="javascript:void(0)" onclick="addline(this)">++</a>&nbsp;&nbsp;<a href="javascript:void(0)" onclick="delline(this)">--</a></td>
    </tr>
    <tr>
    <td>2</td>
    <td>测试二</td>
    <td>单位</td>
    <td>3</td>
    <td><a href="javascript:void(0)" onclick="addline(this)">++</a>&nbsp;&nbsp;<a href="javascript:void(0)" onclick="delline(this)">--</a></td>
    </tr>
    <tr>
    <td>3</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td><a href="javascript:void(0)" onclick="addline(this)">++</a>&nbsp;&nbsp;<a href="javascript:void(0)" onclick="delline(this)">--</a></td>
    </tr>
    <tr>
    <td>4</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td><a href="javascript:void(0)" onclick="addline(this)">++</a>&nbsp;&nbsp;<a href="javascript:void(0)" onclick="delline(this)">--</a></td>
    </tr>
    </body></html>
      

  13.   

    <html>
    <head>
    <META http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>标题</title>
    <STYLE>
    </STYLE>
    <script>
    function add()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    var tb = document.getElementById("tb");
    var tr = tb.insertRow(rowIndex + 1);
    var td = tr.insertCell();
    td = tr.insertCell();
    td.innerHTML = "<input name='mc' value='nnn"+(rowIndex + 1)+"' style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='dw' value=\"nnn\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='sl' value=\"n\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<span style=\"cursor:hand;\" onclick=\"addRow()\">++</span> <span style=\"cursor:hand;\" onclick=\"delRow()\">--</span>";
    for (var i = rowIndex + 1; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    function delRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    event.srcElement.parentNode.parentNode.removeNode(true);
    for (var i = rowIndex; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    </script>
    </head><body>
    <table id="tb">
    <tr><td>No.</td><td>aaaa</td><td>bbbb</td><td>cccc</td><td>dddd</td></tr>
    <tr> <td>1</td><td>a</td><td>a</td><td>2</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr> <td>2</td><td>a</td><td>a</td><td>3</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr> <td>3</td><td>a</td><td>a</td><td>b</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    </table>
    </body>
    </html>
      

  14.   

    大体意思是:我想在这个页面中把一些信息都加上去,然后提交,存入数据库。。现在出现一个问题:我点击++的时候,如下所示:我在no3的项目名称加上了bb,no4的项目名称加上了bb,,这是我点击no3右边的++,这时no4的bb就没有了。No.   项目名称                   单位    数量           显示 
    1      aa                         斤       2          ++ --  
    2                                                     ++ --  
    3      aabbb                      斤       3          ++ --  
    4      aabbb                                           ++ --
      

  15.   

    是这个意思不?
    <html>
    <head>
    <META http-equiv="Content-Type" content="text/html; charset=gbk">
    <META HTTP-EQUIV="pragma" CONTENT="no-cache">
    <title></title>
    <STYLE>
    </STYLE>
    <script>
    function addRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    var tb = document.getElementById("tb");
    var tr = tb.insertRow(rowIndex + 1);
    var td = tr.insertCell();
    td = tr.insertCell();
    //td.innerHTML = "<input name='mc' value=\"名称\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='dw' value=\"斤\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='sl' value=\"1\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<span style=\"cursor:hand;\" onclick=\"addRow()\">++</span> <span style=\"cursor:hand;\" onclick=\"delRow()\">--</span>";
    tb.rows(rowIndex + 1).cells(1).innerHTML = "<input name='mc' value=\"名称"+(rowIndex + 1)+"\" style='border:0px;' readonly>";
    for (var i = rowIndex + 1; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    function delRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    event.srcElement.parentNode.parentNode.removeNode(true);
    for (var i = rowIndex; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    </script>
    </head><body>
    <table id="tb">
    <tr><td>No.</td><td>项目名称</td><td>单位</td><td>数量</td><td>显示</td></tr>
    <tr><td>1</td><td>名称1</td><td>斤</td><td>2</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr><td>2</td><td>名称2</td><td>斤</td><td>3</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr><td>3</td><td>名称3</td><td>斤</td><td>数量</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    </table>
    </body>
    </html>
      

  16.   

    谢谢,是这个意思!就差一个小地方:tb.rows(rowIndex + 1).cells(1).innerHTML = "<input name='mc' value=\"名称"+(rowIndex + 1)+"\" style='border:0px;' readonly>";<input name='mc'> 这块能让它等于第一行就是mc1,第5行就是mc5....就差这一个地方!
      

  17.   

    我也想知道。adverse(King)真是高手,
      

  18.   

    <html>
    <head><title></title>
    <style>
    TD
    {
    border:1 solid #999999;
    padding:1;
    Text-Align:center;
    }
    Table
    {
     border:1 solid #999999;
     border-collapse:collapse;
    }
    </style>
    <script>
    function addline(obj)
    {
    var lineElement=obj.parentElement;
    while(true){if(lineElement.tagName=="TR")break;else lineElement=lineElement.parentElement;}
    var tb=lineElement.parentElement;
    var newline=tb.insertRow(lineElement.sectionRowIndex+1);
    for(var i=0;i<lineElement.cells.length;i++)
    {
    var td=newline.insertCell(-1);
    td.innerHTML=lineElement.cells[i].innerHTML;
    }
    for(var i=1;i<tb.rows.length;i++)
    {
    tb.rows[i].cells[0].innerHTML=i;
    for(var j=1;j< tb.rows[i].cells.length;j++)
    {
    tb.rows[i].cells[j].name=i+"l"+j+"r";
    }
    }}
    function delline(obj)
    {
    var lineElement=obj.parentElement;
    while(true){if(lineElement.tagName=="TR")break;else lineElement=lineElement.parentElement;}
    var tb=lineElement.parentElement;
    tb.deleteRow(lineElement.sectionRowIndex);
    for(var i=1;i<tb.rows.length;i++)
    {
    tb.rows[i].cells[0].innerHTML=i;
    for(var j=1;j< tb.rows[i].cells.length;j++)
    {
    tb.rows[i].cells[j].name=i+"l"+j+"r";
    }
    }
    }
    function frmsubmit()
    {
    //....
    document.frames["frm"].submit();
    }
    </script>
    </head>
    <body>
    <form name="frm" action="dealwithpage.html" method="post">
    <table cellpadding=0 CELLSPACING=0>
    <tr>
    <td>No.</td>
    <td>项目名称</td>
    <td>单位</td>
    <td>数量</td>
    <td>显示</td>
    </tr>
    <tr>
    <td>1</td>
    <td><input name="1l1r" value="项目1"/></td>
    <td><input name="1l2r" value="斤"/></td>
    <td><input name="1l3r" value="1"/></td>
    <td><a href="javascript:void(0)" onclick="addline(this)">++</a>&nbsp;&nbsp;<a href="javascript:void(0)" onclick="delline(this)">--</a></td>
    </tr>
    <tr>
    <td>2</td>
    <td><input name="2l1r" value="项目2"/></td>
    <td><input name="2l2r" value="斤"/></td>
    <td><input name="2l3r" value="2"/></td>
    <td><a href="javascript:void(0)" onclick="addline(this)">++</a>&nbsp;&nbsp;<a href="javascript:void(0)" onclick="delline(this)">--</a></td>
    </tr>
    <tr>
    <td>3</td>
    <td><input name="3l1r"/></td>
    <td><input name="3l2r"/></td>
    <td><input name="3l3r"/></td>
    <td><a href="javascript:void(0)" onclick="addline(this)">++</a>&nbsp;&nbsp;<a href="javascript:void(0)" onclick="delline(this)">--</a></td>
    </tr>
    <tr>
    <td>4</td>
    <td><input name="4l1r"/></td>
    <td><input name="4l2r"/></td>
    <td><input name="4l3r"/></td>
    <td><a href="javascript:void(0)" onclick="addline(this)">++</a>&nbsp;&nbsp;<a href="javascript:void(0)" onclick="delline(this)">--</a></td>
    </tr>
    </table>
    </form>
    <button onclick="frmsubmit()">提交</button>
    </body></html>
      

  19.   

    你的意思是让name那加个序号,和前面的NO.一样?
    觉得一般来讲最好是同一类东西,让他有相同的name,这样在后台可以这样:request.getParameterValues("mc");就把所有name=mc的全取出来了,是个String数组.如果有特殊操作,可以有不同的id.
    下面是按你要求改的,不知道我理解对没?
    <html>
    <head>
    <META http-equiv="Content-Type" content="text/html; charset=gbk">
    <META HTTP-EQUIV="pragma" CONTENT="no-cache">
    <title></title>
    <STYLE>
    </STYLE>
    <script>
    function addRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    var tb = document.getElementById("tb");
    var tr = tb.insertRow(rowIndex + 1);
    var td = tr.insertCell();
    td = tr.insertCell();
    td.innerHTML = "<input name='mc"+(rowIndex + 1)+"' value=\"名称"+(rowIndex + 1)+"\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='dw' value=\"斤\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<input name='sl' value=\"1\" style='border:0px;' readonly>";
    td = tr.insertCell();
    td.innerHTML = "<span style=\"cursor:hand;\" onclick=\"addRow()\">++</span> <span style=\"cursor:hand;\" onclick=\"delRow()\">--</span>";
    for (var i = rowIndex + 1; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    function delRow()
    {
    var rowIndex = event.srcElement.parentNode.parentNode.rowIndex;
    event.srcElement.parentNode.parentNode.removeNode(true);
    for (var i = rowIndex; i < tb.rows.length; i++)
    {
    tb.rows(i).cells(0).innerHTML = i;
    }
    }
    </script>
    </head><body>
    <table id="tb">
    <tr><td>No.</td><td>项目名称</td><td>单位</td><td>数量</td><td>显示</td></tr>
    <tr><td>1</td><td>名称1</td><td>斤</td><td>2</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr><td>2</td><td>名称2</td><td>斤</td><td>3</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    <tr><td>3</td><td>名称3</td><td>斤</td><td>数量</td><td><span style="cursor:hand;" onclick="addRow()">++</span> <span style="cursor:hand;" onclick="delRow()">--</span></td></tr>
    </table>
    </body>
    </html>
      

  20.   

    谢谢adverse(King) ,谢谢你的耐心!现在结贴!多谢!