回答
我会通过prop
映射中的键/值对克隆后更新这些值:
$("#selector").clone().prop({ id: "newId", name: "newName"});
克隆元素在DOM,直到你加入他们,所以你不会不存在必须担心重复id
s直到你这样做。
更新:在你说的意见,你有你需要克隆20 input
秒。我将创建一个接受DOM元素和新ID和名称的函数。你甚至可以做一个小插件出来的:
(function($) {
$.fn.cloneWithProperties = function (properties) {
return this.clone().prop(properties);
};
})(jQuery)
用法:
$("#selector").cloneWithProperties({ id: "newId", name: "newName" });
但我有近20个输入框,我必须克隆 –
不应该是'.attr({...})'而不是?无论是id还是name都是属性。两者都是属性。 http://api.jquery.com/prop/ – techfoobar
“attr”(而不是“prop”)会更“正确”,但这绝对是一种可行的方式。 –
你可以这样做:
var x = $("#selector").clone();
x.find('#oldID1').attr({id: "newID1", name: "newName1"});
x.find('#oldID2').attr({id: "newID2", name: "newName2"});
...
其一旦完成,就可以追加x到哪里你要。
请注意,上面的#selector是指您的表格行元素。
你可以尝试这样的事:
<div class="container">
<div class="goodbye">
Goodbye
<div id="h1" class="hello">Hello</div>
</div>
</div>
$('#h1').clone().attr('id','h2').appendTo('.container');
您可以cloneJS自动化您的克隆。这只是一个测试版本:CloneJS
- 1. jQuery克隆不同名称的元素
- 2. 克隆和重命名id和名称
- 3. 克隆和重命名ID和名称
- 4. 更新克隆元素-JQuery
- 5. 如何更新div元素中html元素的id和名称?
- 6. 如何用新ID克隆元素?
- 7. jquery克隆克隆相同而不是新名称
- 8. 替换jquery克隆对象中的html元素的ID号
- 9. jquery克隆新元素并添加变量名称
- 10. 每次克隆时给克隆元素一个唯一的数字ID名称
- 11. 你可以在HTML元素中使用名称和id属性吗?
- 12. jQuery的克隆HTML元素texteara
- 13. html元素的jQuery克隆问题
- 14. jquery克隆,替换id和名称属性中的数字
- 15. 是否可以克隆multimethod?
- 16. 是否可以克隆Z3_context?
- 17. 是否可以克隆AVPlayerLayer?
- 18. jQuery的克隆ID更新
- 19. 是否有任何HTML元素可以用作“ID”元素?
- 20. 使用JQuery删除克隆的元素
- 21. 使用jQuery克隆和重命名表单元素
- 22. jquery的克隆元素
- 23. jQuery的克隆元素
- 24. 拖动元素在jQuery中的克隆
- 25. 如何使用jQuery更改克隆元素的ID?
- 26. 如何使用不同名称的jquery克隆生成HTML?
- 27. javascript克隆元素树并更改克隆中的所有ID
- 28. jQuery的:克隆元素和事件
- 29. 在html中使用新的id克隆div的div
- 30. 没有得到克隆div元素在jQuery中的ID
答案是http://stackoverflow.com/questions/1339730/is-there-a-way-to-clone-elements-using-jquery。 – anson
andbeyond链接到所有需要的答案。需要做20个?将这个答案包装在迭代器中,并将索引添加到ID或类似的东西。 –