用js实现生成xml对象

一般来说,xml文件都是从外部载入的,那么我们如何只用js生成xml对象呢?下面的程序实现了这一点,只需要输入字符串形式的xml数据,就可以转换为xml对象,并且兼容firefox。

  用这种方法,我们也可以在firefox中实现xml数据岛,即用xmp标签来装载xml字符串,然后调用createXml函数来生成xml。
    由于firefox中不支持节点的.xml属性,所以需要给它添加该属性,使之与IE一致
 

复制代码 代码如下:
<body>

<xmp id=x1>

    <root>

        <node>test</node>

    </root>

</xmp>

</body>

<script>

if(!document.all)

    XMLDocument.prototype.__defineGetter__(“xml”,function(){return new XMLSerializer().serializeToString(this)})

function createXml(str){

    if(document.all){

        var xmlDom=new ActiveXObject(“Microsoft.XMLDOM”)

        xmlDom.loadXML(str)

        return xmlDom

    }

    else

        return new DOMParser().parseFromString(str, “text/xml”)

}

xml=createXml(document.getElementById(“x1”).innerHTML)

alert(xml.xml)

</script>

if(!document.all)
    XMLDocument.prototype.__defineGetter__(“xml”,function(){return new XMLSerializer().serializeToString(this)})

function createXml(str){
    if(document.all){
        var xmlDom=new ActiveXObject(“Microsoft.XMLDOM”)
        xmlDom.loadXML(str)
        return xmlDom
    }
    else
        return new DOMParser().parseFromString(str, “text/xml”)
}
xml=createXml(document.getElementById(“x1”).innerHTML)
alert(xml.xml)

看完这篇用js实现生成xml对象的相关文章后,想必朋友们对此的了解都更加深入了吧!获取更多精彩有趣的技术文章内容,尽在爱站技术频道网站。