如何在 jquery 中使用克隆复制表行并为控件创建新的唯一 ID

2023-12-30

如何在 jquery 中使用克隆复制表行并为控件创建新的唯一 ID。克隆实际上也会复制数据。我不希望复制数据。

表行包含以下信息:

<tr> 
     <td><input type="text" id="txtTitle" name="txtTitle"></td> 
     <td><input type="text" id="txtLink" name="txtLink"></td> 
</tr> 

我需要为所有新行创建唯一的 ID,例如 txtTitle1、link1、Title2、link2 等


你可以这样做:

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 等开头的唯一 ID。

你可以在这里尝试一下 http://jsfiddle.net/nick_craver/BE5Lr/。如果您需要更改name我也会传递一个对象.attr() http://api.jquery.com/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++;
});​

您可以在这里尝试该版本 http://jsfiddle.net/nick_craver/BE5Lr/1/.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 jquery 中使用克隆复制表行并为控件创建新的唯一 ID 的相关文章

随机推荐