JavaScript を使用してクロスブラウザー方式で DOM を XML テキストにシリアル化するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/43455

質問

XML オブジェクトがあります (次を使用してロードされました) XMLHTTPRequestさんの responseXML)。オブジェクトを(jQueryを使用して)変更し、それを文字列内のテキストとして保存したいと考えています。

Firefox などにはそれを行う簡単な方法があるようです。

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

(から ロゼッタコード )

しかし、どうやってそれを行うのですか IE6およびその他のブラウザ (もちろん Firefox を壊す必要はありません)?

役に立ちましたか?

解決

Internet Explorer では doc.xml を使用できます。

次のようなものが得られます。

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;
}

それを見つけた ここ.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top