JQuery Clone正在克隆最终行的数据

时间:2009-12-09 07:05:22

标签: jquery clone

我遇到了问题。我正在使用:

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

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

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

替换表格底部的新(空)行。

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

在这种情况下,如何删除单击的行并向其中添加行 表格底部是空的吗?

感谢。

1 个答案:

答案 0 :(得分: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) //...
    });
    
  4. 请注意,克隆IE上的最后一个元素存在已知错误,详见此处:Problem using jQuery clone function in form