Como faço para serializar um texto DOM para XML, usando JavaScript, de forma cross-browser?

Eu tenho um object XML (carregado usando responseXML XMLHTTPRequest ). Eu modifiquei o object (usando jQuery) e gostaria de armazená-lo como texto em uma string.

Existe aparentemente uma maneira simples de fazer isso no Firefox et al:

 var xmlString = new XMLSerializer().serializeToString( doc ); 

(de rosettacode )

Mas como fazer isso no IE6 e em outros navegadores (sem, é claro, quebrar o Firefox)?

Você pode usar o doc.xml no exlporer da internet.

Você terá algo assim:

 function xml2Str(xmlNode) { try { // Gecko- and Webkit-based browsers (Firefox, Chrome), Opera. return (new XMLSerializer()).serializeToString(xmlNode); } catch (e) { try { // Internet Explorer. return xmlNode.xml; } catch (e) { //Other browsers without XML Serializer alert('Xmlserializer not supported'); } } return false; } 

Encontrei aqui .