帮你试了一下
改进建议:
<input type="button" class=POSBtn value="加入装箱列表" name="btnAdd1" onclick="unitepacking(document.getElementsByName('chk1'));">
这样就不用判断if(obj.length>0){...了,得到的一定是一组对象出错问题:
第二行tr“S6MF05002 黑 单机褛 秋季 499 A ”太隐蔽了,你自己没有看到
所以otbl.deleteRow(i+1)->otbl.deleteRow(i+2)

解决方案 »

  1.   

    还是没有解决!表头单行的情况下可以实现!如下…… rowspan=2 就有点麻烦!
    <html>
    <head>
    <script language=javascript>
    function unitepacking(obj){
    var sStr='0';
    if (obj.length>0){
    for(i=0;i<obj.length;i++){
    if(obj[i].checked==true){
    sStr=sStr+','+obj[i].value;
    //alert(sStr);
    }
    }
    }else{
    if (obj.checked==true){
    sStr=sStr+','+obj.value;
    }
    }
    sStr=sStr.substring(2,sStr.length);
    if(sStr==''){alert('\n请选择货品!');return false;}
    else{
    if (confirm('确定要将选定记录加入装箱列表?')==true){

    if (obj.length>0){
    var otbl = obj[0].parentElement.parentElement.parentElement.parentElement;
    for(var i=obj.length-1;i>=0;i--){
    if(obj[i].checked==true){
    otbl.deleteRow(i+1);
    }
    }
    }else{
    var otbl = obj.parentElement.parentElement.parentElement.parentElement;
    if (obj.checked==true){
    otbl.deleteRow(i+1);
    }
    }
    }
    }
    }
    </script>
    </head>
    <body>
    <form name="frm1"> 
    <table align="center" border="0" cellspacing="0" cellpadding="4" class=sub>    
    <tr>      
    <td><b>款 号</b></td>      
    <td><b>颜 色</b></td>     
    <td><b>名 称</b></td>      
    <td><b>季 节</b></td>      
    <td><b>零售价</b></td>   
    <td>A</td>
    <td>46</td>
    <td>48</td>
    <td>50</td>
    <td>52</td>
    <td>54</td>    
    <td ><b>数量</b></td>     
    <td ><b>金额</b></td>   
    <td ><input type="checkbox" onclick="for(i=0;i<chk1.length;i++){if(this.checked==true){chk1[i].checked=true;}else{chk1[i].checked=false;}}"></td>      
    <td ><b>全 选</b></td>    
    </tr>
    <tr id="trRowS6MF05001035">       
    <td >S6MF05001</td>        
    <td >黑</td>        
    <td >单机褛</td>        
    <td >秋季</td>        
    <td >459</td>        
    <td >A</td>        
    <td >60</td>        
    <td >110</td>        
    <td >110</td>        
    <td >80</td>        
    <td >40</td>        
    <td >400</td>        
    <td align="right">183,600.00</td>
    <td align="right" ><input type="checkbox" value="S6MF05001035"  name="chk1"></td>        
    <td >&nbsp;</td>
    </tr>
    <tr id="trRowS6MF05001127">
    <td >S6MF05001</td>
    <td >杏</td>
    <td >单机褛</td>
    <td >秋季</td>
    <td >459</td>
    <td >A</td>
    <td >40</td>
    <td >90</td>        
    <td >90</td>        
    <td >60</td>       
    <td >20</td>        
    <td >300</td>        
    <td align="right">137,700.00</td>
    <td align="right" ><input type="checkbox" value="S6MF05001127"  name="chk1"></td>        
    <td >&nbsp;</td>
    </tr>
    <tr id="trRowS6MF05002035">       
    <td >S6MF05002</td>       
    <td >黑</td>       
    <td >单机褛</td>        
    <td >秋季</td>        
    <td >499</td>        
    <td >A</td>        
    <td >70</td>       
    <td >140</td>        
    <td >140</td>       
    <td >100</td>       
    <td >50</td>        
    <td >500</td>        
    <td align="right">249,500.00</td>
    <td align="right" ><input type="checkbox" value="S6MF05002035"  name="chk1"></td>        
    <td >&nbsp;</td>
    </tr>
    <tr id="idSub1">        
    <td colspan=15 align="right">
    <input type="button" class=POSBtn value="加入装箱列表" name="btnAdd1" onclick="unitepacking(document.getElementsByName('chk1'));">
    </td>
    </tr>
    </table>
    </form>
    </body>
    </html>
      

  2.   

    <script language=javascript>
    var sStr="";
    function unitepacking(obj){
    if(obj.length==0){alert('\n请选择货品!');return false;}
    if (!confirm('确定要将选定记录加入装箱列表?'))
      return false;
    for(var i=0;i<obj.length;i++){
      if(obj[i].checked==true){
        sStr=sStr+','+obj[i].value;
        obj[i].parentElement.parentElement.removeNode(true);
      }
    }
    if(sStr.charAt(0)==",")
      sStr = sStr.substring(1);
    alert(sStr);
    }
    </script>
    另外全选的也改了一下
    <input type="checkbox" onclick="var list=document.getElementsByName('chk1');for(var i=0;i<list.length;i++)list[i].checked=this.checked;">
      

  3.   

    因为是复表头,所以应该是otbl.deleteRow(i+2);