用一个变量rowinsert记录刚才插入的行数,然后删除的时候从第一行开始删除指定刚才插入的数量rowinsert即可.更好点的算法就是判断当前要插入是大于刚才的数字还是小于,大于的话从第rowinsert+1开始插入num-rowinsert行.小于的话从num+1删除rowinsert-num行

解决方案 »

  1.   

    用一个变量rowinsert记录刚才插入的行数,然后删除的时候从第一行开始删除指定刚才插入的数量rowinsert即可. 更好点的算法就是判断当前要插入是大于刚才的数字还是小于,大于的话从第rowinsert开始插入num-rowinsert行.小于的话从num删除rowinsert-num行由于row集合下标从0开始的所以不用加1的。
      

  2.   

    select的选择值改变,如何记录上一次选的值呢?如果知道就好办,大家出出主意,3Q
      

  3.   

    theTable.innerText=""就能删除所有行了
      

  4.   

    这个简单的,使用一个中间变量的或者使用COOKIE
      

  5.   

    你在页面定义一个变量就可以了.
    var rowinsert=0;function addRow(obj) {
       var num = obj.value;  //num是提交的件数   var beginRow = obj.parentElement.parentElement.rowIndex;
       var theTable = document.getElementById("fillTbl");
       var dRow = document.getElementsByTagName("tr");   insertrow = num - rowinsert//取得要插入或删除的行数
       rowinsert = num //记录新选择的值供下次使用
       if(insertrow==0)return //如果没变化则返回
       if(insertrow<0){
          //小于0即删除,则从num开始删除Math.abs(insertrow)行
          for(i=num;i<(num+Math.abs(insertrow));i++)
             theTable.deleteRow(i)
       }else{
          //大于0即插入,从num-insertrow开始插入insertrow行
           for(i=num-insertrow;i<num;i++)
             //执行插入
       }
    }