....
你要看我给你的js代码是如何生成name的,
是hwmc0,hwmc1,hwmc2.......
是根据var Index=1;来计算的.如果你要在服务器端写数据库时,你可以在表单中添加一个隐藏的控件,在表单提交前把这个隐藏的控件的值设置为Index的
<form method='post' onsubmit="document.getElementById('MaxIndex').value=Index;">
<input type='hidden' name='MaxIndex' id='MaxIndex'/>
</form>asp
dim mi:mi=cint(request.form("maxindex"))-1'记得是从0开始的
for i=0 to mi
  response.write request.form("hwmc"&i)
  response.write request.form("chang"&i)
  response.write request.form("kuang"&i)
'=====其他的代码,但要注意最下面的"总件数,总体积,总纯运费 ,总保险费 ,总运费"是不需要mi来连接键名称的
'...
'....
next

解决方案 »

  1.   

    我把后面的request("hwmc")..改为request.("hwmc0")
    现在只能保存动态增加行的第一行 动态增加的行的数据还是保存不了!!!!
      

  2.   

    我还是没搞懂 你动态增加行后的命名规则  在表单中的文本域名称为hwmc0 chang0 kuang0 而在保存获取数据时 却用hwmc(i) chang(i) kuang(i) 
      

  3.   

    <%
    set conn=server.CreateObject("adodb.connection") 
    strConn="provider=sqloledb.1;persist security info=false;uid=sa;pwd=hd56;Initial Catalog=mir;Data Source=."
    conn.Open strConnconn.beginTrans            
        sql = "insert into jydxx(jydbh,jydzt,shfs,jhrq,sxhh,sdz,zdz,zyfs,thfs,fhrbm,fhrxm,fhrdh,fhrdz,shrbm,shrxm,shrdh,shrdz,hwjs,ztiji,zongzl,zbxf,zbxe,zcyf,zongyf,yingjje,yijje,sqje,dshk,dshkf,hdfk,dzf,jjf,qdlx,yhr,zdr,skr,zdtime,beizu) values("
        sql=sql&"'"& request("jydbh") &"',"
    sql=sql&"'"& request("jydzt") &"',"
    sql=sql&"'"& request("shfs") &"',"
    sql=sql&"'"& request("jhrq") &"',"
    sql=sql&"'"& request("sxhh") &"',"
    sql=sql&"'"& request("sdzmc") &"',"
    sql=sql&"'"& request("zdzmc") &"',"
    sql=sql&"'"& request("zyfs") &"',"
    sql=sql&"'"& request("thfs") &"',"
    sql=sql&"'"& request("fhrbm") &"',"
    sql=sql&"'"& request("fhrxm") &"',"
    sql=sql&"'"& request("fhrdh") &"',"
    sql=sql&"'"& request("fhrdz") &"',"
    sql=sql&"'"& request("shrbm") &"',"
    sql=sql&"'"& request("shrxm") &"',"
    sql=sql&"'"& request("shrdh") &"',"
    sql=sql&"'"& request("shrdz") &"',"
    sql=sql&"'"& request("hwjs") &"',"
    sql=sql&"'"& request("ztiji") &"',"
    sql=sql&"'"& request("zongzl") &"',"
    sql=sql&"'"& request("zbxf") &"',"
    sql=sql&"'"& request("zbxe") &"',"
    sql=sql&"'"& request("zcyf") &"',"
    sql=sql&"'"& request("zongyf") &"',"
    sql=sql&"'"& request("yingjje") &"',"
    sql=sql&"'"& request("yijje") &"',"
    sql=sql&"'"& request("sqje") &"',"
    sql=sql&"'"& request("dshk") &"',"
    sql=sql&"'"& request("dshkf") &"',"
    sql=sql&"'"& request("hdfk") &"',"
    sql=sql&"'"& request("dzf") &"',"
    sql=sql&"'"& request("jjf") &"',"
    sql=sql&"'"& request("qdlx") &"',"
        sql=sql&"'"& request("yhr") &"',"
    sql=sql&"'"& request("zdr") &"',"
    sql=sql&"'"& request("skr") &"',"
    sql=sql&"'"& request("zdtime") &"',"
    sql=sql&"'"& request("beizu") &"')"

         'Response.Write sql&"<p>"
        conn.execute(sql)
        
       
     
     
        if request("hwmc0").count>0 then
            dim maxid
            maxid = 1
            sql = "select max(right(jydbh,13)) as maxid from jydxx"
            set rs = conn.execute(sql)
            maxid = rs("maxid")
            rs.close
            set rs = nothing
            
            
            for i =1 to request("hwmc0").count
                sql = "insert into hwxx(jydbh,hwmc,chang,kuang,gao,jianshu,dtj,dzl,ztj,zzl,danjia,cyf,bxf,zyf) values("
                sql=sql&""& maxid &","
                sql=sql&"'"& request("hwmc0")(i) &"',"
                sql=sql&"'"& request("chang0")(i) &"',"
                sql=sql&"'"& request("kuang0")(i) &"',"
    sql=sql&"'"& request("gao0")(i) &"',"
    sql=sql&"'"& request("jianshu0")(i) &"',"
    sql=sql&"'"& request("dtj0")(i) &"',"
    sql=sql&"'"& request("dzl0")(i) &"',"
    sql=sql&"'"& request("ztj0")(i) &"',"
    sql=sql&"'"& request("zzl0")(i) &"',"
    sql=sql&"'"& request("danjia0")(i) &"',"
    sql=sql&"'"& request("cyf0")(i) &"',"
    sql=sql&"'"& request("bxf0")(i) &"',"
                sql=sql&"'"& request("zyf0")(i) &"')"
                   'Response.Write "    "&sql&"<br>"
                conn.execute(sql)
            next    
        end if
        
        if conn.Errors.count > 0 then                                                          
            conn.RollBackTrans
        else                 
            conn.commitTrans
        end if
            conn.close
            set conn = nothing
    response.write "Êý¾ÝÒѳɹ¦±£´æ"
    %>
    这是我的后台保存数据代码
      

  4.   

    function addRow(tabObj,colNum,sorPos,targPos){ 
        var nTR = tabObj.insertRow(tabObj.rows.length-targPos);   
        var TRs = tabObj.getElementsByTagName('TR');                                                                                                   
        var sorTR = TRs[sorPos];                     
        var TDs = sorTR.getElementsByTagName('TD');                   
        if(colNum==0 || colNum==undefined || colNum==isNaN){ 
          colNum=tabObj.rows[0].cells.length; 
        } 
        
        var ntd = new Array();                   
        for(var i=0; i < colNum; i++){             
          ntd[i] = nTR.insertCell();               
          ntd[i].id = TDs[0].id; 
          var reg=/name=([a-z]+)(\d+)/i
    //这里看见了没有,我用正则把你的上一行的text的名称替换了,使用Index来替换数字的部分,字母部分没有变
    //例如你上一行的长度的text的名称为chang1,这是添加的新行的长的name为chang2了
          ntd[i].innerHTML = TDs[i].innerHTML.replace(reg,"name=\"$1"+Index+"\"");  
        } 
        Index++;//增加数字部分

    只要怎么获取,请认真看1楼的代码
      

  5.   

    看啦 现在可以保存拉 问题是只能保存第一行的数据 动态增加行的第二、三行数据 保存不了
    下面是获取到的数据结果,老大 你看看 insert into jydxx(jydbh,jydzt,shfs,jhrq,sxhh,sdz,zdz,zyfs,thfs,fhrbm,fhrxm,fhrdh,fhrdz,shrbm,shrxm,shrdh,shrdz,hwjs,ztiji,zongzl,zbxf,zbxe,zcyf,zongyf,yingjje,yijje,sqje,dshk,dshkf,hdfk,dzf,jjf,qdlx,yhr,zdr,skr,zdtime,beizu) values('KC2007122100033','票据生成','客户自送','2007-12-21 16:13:33','159','','','自转','自提','','','','','','','','','30','98280','0','50','25000','2293200','2293250','2293250','','','','','','','','签单原件寄回','','','','2007-12-21 16:13:33','')
    insert into hwxx(jydbh,hwmc,chang,kuang,gao,jianshu,dtj,dzl,ztj,zzl,danjia,cyf,bxf,zyf) values(2007122100033,'zhada1','13','12','21','10','3276','','32760','0','10','327600','10','327610')
    数据已成功保存其中 hwxx表 我是动态增加二行的保存时 只有第一行数据 也没有提示出错!!!!!
      

  6.   

    在表单中添加一个隐藏控件,这个控件的值是添加了多少行,即是Index的值<form method='post' onsubmit="document.getElementById('MaxIndex').value=Index;">
    <input type='hidden' name='MaxIndex' id='MaxIndex'/><!----这个加上---->
    <!--....其他的代码....-->
    </form>
    原来删除行的deleteRow函数改一下,至少好留有一行,要不全删除以后再添加行时就没办法输入了function deleteRow(tabObj,targPos,btnObj){ 
    if(Index<=1)//不能全部删除
    {
      alert("至少要要有1件物品!");
    return;
    }              
        for(var i =0; i <tabObj.rows.length;i++){ 
          if(tabObj.getElementsByTagName('img')[i]==btnObj){       
            tabObj.deleteRow(i+targPos); 
          } 
        } 
        Index--;
        getTotal();//重新计算总的费用

    插入行写入数据库的vbscript代码
    dim mi:mi=cint(request.form("maxindex"))-1'记得是从0开始的
    if mi>=0   then 
       dim   maxid 
                    maxid   =   1 
                    sql   =   "select   max(right(jydbh,13))   as   maxid   from   jydxx" 
                    set   rs   =   conn.execute(sql) 
                    maxid   =   rs("maxid") 
                    rs.close 
                    set   rs   =   nothing                 
                    
                    for   i   =0   to   mi 
                            sql   =   "insert   into   hwxx(jydbh,hwmc,chang,kuang,gao,jianshu,dtj,dzl,ztj,zzl,danjia,cyf,bxf,zyf)   values(" 
                            sql=sql&""&   maxid   &"," 
    '============键名称是 request("hwmc"&i),  request("chang"&i) 这样格式的,不是request("hwmc")(i)
    ,request("chang")(i)这样的=================
                            sql=sql&"'"&   request("hwmc"&i)   &"'," 
                            sql=sql&"'"&   request("chang"&i)   &"'," 
                            sql=sql&"'"&   request("kuang"&i)   &"'," 
    sql=sql&"'"&   request("gao"&i)   &"'," 
    sql=sql&"'"&   request("jianshu"&i)   &"'," 
    sql=sql&"'"&   request("dtj"&i)   &"'," 
    sql=sql&"'"&   request("dzl"&i)   &"'," 
    sql=sql&"'"&   request("ztj"&i)   &"'," 
    sql=sql&"'"&   request("zzl"&i)   &"'," 
    sql=sql&"'"&   request("danjia"&i)   &"'," 
    sql=sql&"'"&   request("cyf0"&i)  &"'," 
    sql=sql&"'"&   request("bxf"&i)  &"'," 
                            sql=sql&"'"&   request("zyf0")(i)   &"')" 
                                  'Response.Write   "         "&sql&" <br> " 
                            conn.execute(sql) 
                    next         
            end   if 
      

  7.   


    ok 拉  太感谢拉
    showbo 哪里人 ?真应该请你吃饭!!!!
      

  8.   


    ok 拉  太感谢拉
    showbo 哪里人 ?真应该请你吃饭!!!!