Ответ 1
Вы можете сделать что-то вроде этого:
var i = 1;
$("button").click(function() {
$("table tr:first").clone().find("input").each(function() {
$(this).val('').attr('id', function(_, id) { return id + i });
}).end().appendTo("table");
i++;
});
Это приведет к очистке значений для новых строк и даст им уникальные идентификаторы, начиная с txtTitle1, txtTile2 и т.д.
Вы можете попробовать здесь. Если вам нужно было изменить name
тоже, я бы передал объект .attr()
, чтобы он был немного чище, например:
var i = 1;
$("button").click(function() {
$("table tr:first").clone().find("input").each(function() {
$(this).attr({
'id': function(_, id) { return id + i },
'name': function(_, name) { return name + i },
'value': ''
});
}).end().appendTo("table");
i++;
});