2 回答
TA贡献1852条经验 获得超7个赞
您可以将用于克隆的事件处理程序直接附加到表中。这样:
$('#myProductsTable').on('click', 'button', function() { // do sth });
这样,同一个按钮可以在结果表中以不同的行为“重用”:
$('#myResultsTable').on('click', 'button', function() { // do sth different});
沃克林示例:
for(var i = 1; i < 10; i ++) {
let $row = $('<tr><td>ROW '+i+'</td><td><button>add '+i+'</button></td></tr>');
$('#products tbody').append($row);
}
$('#products').on('click', 'button', function() {
let $row = $(this).closest('tr').clone();
$row.find('button').text('remove');
$('#results').append( $row );
});
$('#results').on('click', 'button', function() {
$(this).closest('tr').remove();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table id="products">
<thead><tr><th>my Products</th></tr></thead>
<tbody></tbody>
</table>
<hr>
<table id="results">
<thead><tr><th>my Results</th></tr></thead>
<tbody></tbody>
</table>
添加回答
举报