2012-03-14 13 views
7

जावास्क्रिप्ट में किसी XML दस्तावेज़ को क्लोन करने का सबसे अच्छा तरीका क्या है?जावास्क्रिप्ट में, मैं XML दस्तावेज़ को क्लोन कैसे करूं?

मैं

var newDocument = myDocument.cloneNode(true); 

कर कोशिश की, लेकिन है कि बस अशक्त लौट आए। मैं भी

var newNode = myDocument.documentElement.cloneNode(true); 

कर माना जाता है, लेकिन है कि मेरी प्रयोजनों के लिए पर्याप्त नहीं है, इस तरह से के बाद से नए नोड एक ही ownerDocument के रूप में पहले है।

उत्तर

5

आप की तरह कुछ कर सकते हैं एक XML दस्तावेज क्लोन करने के लिए निम्नलिखित:

var newDocument = oldDocument.implementation.createDocument(
    oldDocument.namespaceURI, //namespace to use 
    null,      //name of the root element (or for empty document) 
    null      //doctype (null for XML) 
); 
var newNode = newDocument.importNode(
    oldDocument.documentElement, //node to import 
    true       //clone its descendants 
); 
newDocument.appendChild(newNode); 
+0

बस और अधिक पूरा हो सकता है, आप कैसे मिलता है ' newDocument'? – hugomg

+0

मैंने कोड अपडेट किया है। – matthewk

संबंधित मुद्दे