2009-12-09 104 views
1

我遇到了问题。我用的是:JQuery克隆克隆最终行的数据

$(this).parents("tr:first").remove(); 

删除的用户点击,然后该行:

var row = $('#picTableDisplay tbody>tr:last').clone(true) 
      .insertAfter('#picTableDisplay tbody>tr:last'); 

在表的底部更换一个新的(空)行。

但是,当表格已满(12行)并且用户想要删除行时,底部表格(具有数据)被克隆(具有数据)。

在这种情况下,我该如何删除点击行并向 表的底部添加一行为空?

谢谢。

回答

1

它似乎在做你刚才告诉它做的事......克隆最后一行,有无数据。
解决方案很简单 - 不要这样做。

  1. 克隆最后无形行(所以你有13行),或
  2. 克隆你一直就在身边模板的行,例如:

    $('#RowTemplate tr').clone(true).show() 
    
  3. 另一种选择是复制行,当页面加载,然后再克隆它:

    var rowTemplate = $('#picTableDisplay tbody>tr:last').clone(true) 
    
    $('#picTableDisplay tr').click(function(){ 
        $(this).closest('tr').remove(); 
        var row = rowTemplate.clone(true) //... 
    }); 
    

另请注意,在IE上最后一个元素的克隆存在一个已知错误,详细信息请参见:Problem using jQuery clone function in form