如何克隆div的所有内容(包括输入或其他标签的内存数据)并将它们放入另一个div?
我尝试使用innerHTML
属性,但在此期间不会复制输入到文本框中的任何信息。
有没有人有任何解决方案?
答案 0 :(得分:4)
普通javascript:使用var clone = [somediv].cloneNode(true)
。如果适用,请务必更改克隆的ID! cloneNode(true)
将复制原始的所有属性和子节点,afiak也会复制输入字段的值。它不会复制分配给原始元素的处理程序。另请参阅MDN
我已编辑this jsfiddle(打算回答另一个SO问题)来证明这一点。
答案 1 :(得分:1)
你可以使用jQuery的.clone(true)
:
http://api.jquery.com/clone/
答案 2 :(得分:1)
没有jQuery,你可以使用
var clone = cloneNode(true);
然后将该节点附加到您喜欢的位置,例如
var targetNode = documentGetElementById('someID');
targetNode.appendChild(clone);