javascript / jquery克隆无法在下拉列表中工作
我在上一篇文章中问了一个问题,我想要动态生成行,并且应该在新行中复制数据。 它工作正常但仅适用于文本字段。 但是我的表格中也有下拉列表,并没有在新行中显示最后一行的选定选项。 这是我的问题将以前的行数据添加到动态生成的行
我有HTML代码:
和脚本代码:
$("#mode").on('change', function () { var rows = parseInt(this.value); console.log(rows); var lastRow; for (var i = 0; i < rows; i++) { lastRow = $('#engagements tr').last().clone(); $('#engagements tr').last().after(lastRow); } });
JS小提琴: http : //jsfiddle.net/jW6eL/3/
试试这个
$("#mode").on('change', function () { var rows = parseInt(this.value); console.log(rows); var lastRow; for (var i = 0; i < rows; i++) { lastRow = $('#engagements tr').last().html(); $('#engagements tr:last').after(''+lastRow+' '); $('#engagements tr:last').find('select').each(function(){ var this_select=$(this); this_select.val(this_select.closest('tr').prev().find('td:eq('+this_select.closest('td').index()+')').find('select').val()) }) } });
出于性能原因,jquery在进行元素克隆时不会保留选择。 但是,您可以尝试使用
.clone(true)
这将通过下拉列表复制所有evens和数据。 这样您就可以使用事件并在下拉列表中选择最后一个选项。