2012-07-18 51 views
1

如何克隆div的所有内容(包括输入或其他标记的内存数据)并将它们放入另一个div?将Div内容复制到第二个分区

我尝试使用innerHTML属性,但不会复制在此期间输入到文本框中的任何信息。

有没有人有任何解决方案?

回答

4

普通的JavaScript:使用var clone = [somediv].cloneNode(true)。如果适用,一定要更改克隆的ID! cloneNode(true)将复制原始文件的所有属性和子节点,它也会复制输入字段的值。它不会复制分配给原始元素的处理程序。参见MDN

我编辑了this jsfiddle(用于回答另一个SO问题)来演示它。

1

您可以使用jQuery的.clone(true)http://api.jquery.com/clone/

+1

jQuery的标签不存在,请确保jQuery是他 – 2012-07-18 18:45:31

+0

@Forte选项L.,是的,我注意到并编辑了我的答案。 – mdziekon 2012-07-18 18:46:20

+0

很酷,有没有非jQuery变体(图书馆没有在这个项目中使用,似乎疯狂加载它只是一件事) – topherg 2012-07-18 18:46:35

1

没有jQuery的,你可以使用

var clone = cloneNode(true); 

然后追加节点等。无论您喜欢如

var targetNode = documentGetElementById('someID'); 
targetNode.appendChild(clone);