XmlSerializer适用于Firefox,但.xml不适用于IE JavaScript

时间:2012-10-26 14:38:05

标签: javascript xml string internet-explorer firefox

我在客户端创建了一个节点(或者我不确定的xml对象),并尝试在本地保存该xml文件。我的目标是将xml节点(或对象)转换为字符串并保存在文本文件中。

问题是以下方法在Firefox上将xml转换为字符串但不在IE上转换

所以我有一个root xml对象:

console.log(xmlToString(root));
//save_content_to_file(xmlToString(root), "C:\\test");

}

function xmlToString(xmlData) { 

    var xmlString;
    //IE
    if (window.ActiveXObject){
        xmlString = xmlData.xml;
    }
    // code for Mozilla, Firefox, Opera, etc.
    else{
        xmlString = (new XMLSerializer()).serializeToString(xmlData);
    }
    return xmlString;
} 

输出FF:

<plist><dict><key>subject</key><string></string><key>date</key><string></string><key>time</key><string></string><key>briefings</key><array><dict><key>files</key><array><dict><key>date</key><string>2012/09/09</string><key>name</key><string></string><key>description</key><string></string></dict></array><key>subject</key><string></string><key>presenter</key><string></string><key>time</key><string></string></dict></array></dict></plist>
在IE上输出

undefined object

EDIT :::

添加以下方法没有任何改变

function serializeXmlDoc(xmlDoc) {
    if (window.XMLSerializer) {
        return (new window.XMLSerializer()).serializeToString(xmlDoc);
    } else if (typeof xmlDoc.xml != "undefined") {
        return xmlDoc.xml;
    }
    return "";
}

任何想法如何在IE上修复此问题?

0 个答案:

没有答案