解决方法
我会传递
prop
一个键/值对映射来克隆后更新这些值:
$("#selector").clone().prop({ id: "newId",name: "newName"});
在您添加它们之前,DOM中不存在克隆元素,因此在您执行此操作之前,您不必担心重复的ID.
更新:在评论中,您说您需要克隆20个输入.我将创建一个获取DOM元素和新id和名称的函数.你甚至可以制作一个小插件:
(function($) { $.fn.cloneWithProperties = function (properties) { return this.clone().prop(properties); }; })(jQuery)
用法:
$("#selector").cloneWithProperties({ id: "newId",name: "newName" });