仅将表格单元格添加到克隆表中

时间:2014-06-22 12:14:57

标签: jquery html

我想在克隆表中添加一个新的 TD ,因此它只存在于克隆表中而不是原始表中。原因是,我不希望用户删除原始表格,否则将无法克隆任何内容:)

目前喜欢这样:

<table>
    <tr>
        <td>
            <div class="sizes">size</div>
            <div class="sizes">length</div>
        </td>
    </tr>
</table>

克隆后应该是这样的:

<table>
    <tr>
        <td>
            <div class="sizes">size</div>
            <div class="sizes">length</div>
        </td>
        <td class="remove-table"><span>REMOVE</span></td>
    </tr>
</table>

JS:

$(document).ready(function () {
   $('.add-another-table').click(function (event) {
      event.preventDefault();
      var clonedTable = $(this).prev('table').clone();
      $(this).before(clonedTable);
   });
   $('div').on('click', '.remove-table', function (event) {
      event.preventDefault();
      $(this).closest('table').remove();
   });
});

http://jsfiddle.net/b3JdB/

1 个答案:

答案 0 :(得分:1)

尝试.append()所需的元素clone

$(document).ready(function () {
    $('.add-another-table').click(function (event) {
        event.preventDefault();
        var clonedTable = $(this).prev('table').clone();
        $(this).before(clonedTable.find('.remove-table').remove().end().find('tr').append('<td class="remove-table"><span>REMOVE</span></td>').end());
    });

    $('div').on('click', '.remove-table', function (event) {
        event.preventDefault();
        $(this).closest('table').remove();
    });
});

DEMO