复制表行并增加所有名称属性

Ric*_*nop 0 javascript jquery

我们有一个这样的表:

<table>
 <tr>
  <td><input type="text" name="FirstName1" /></td>
  <td><input type="text" name="LastName1" /></td>
 </tr>
 <tr>
  <td><input type="text" name="FirstName2" /></td>
  <td><input type="text" name="LastName2" /></td>
 </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

我想要一个按钮,它将在表的末尾添加新行,并增加名称属性,因此它将如下所示:

<table>
 <tr>
  <td><input type="text" name="FirstName1" /></td>
  <td><input type="text" name="LastName1" /></td>
 </tr>
 <tr>
  <td><input type="text" name="FirstName2" /></td>
  <td><input type="text" name="LastName2" /></td>
 </tr>
 <tr>
  <td><input type="text" name="FirstName3" /></td>
  <td><input type="text" name="LastName3" /></td>
 </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

等等.

到目前为止,我有这个,但它没有增加名称属性:

$("#newRowButton").click(function(){
  $("table tr:last").clone().appendTo("table");
});
Run Code Online (Sandbox Code Playgroud)

Dar*_*rov 8

$("#newRowButton").click(function() {
  $("table tr:last")
      .clone()
      .appendTo("table")
      .find(':input')
      .attr('name', function(index, name) {
          return name.replace(/(\d+)$/, function(fullMatch, n) {
              return Number(n) + 1;
          });
      })
});
Run Code Online (Sandbox Code Playgroud)

现场演示.