当前位置: 首页 > 图文教程 > XML家族 > XML > 用JavaScript生成XML

XML
XML简易教程之四
XML与HTML的结合(上)
XML与HTML的结合(下)
XML入门的常见问题(一)
XML入门的常见问题(二)
XMLHTTP资料
什么是XML
什么是 XML Web Service
XML正在接管Web服务 成为SOA的基础
怎么样在网页上读取远程xml的数据
XML教程—编写结构完整的XML文档
读写xml文件的2个小函数
XML文档的基本操作
初学者如何开发出一个高质量的J2EE系统
优化 JavaScript 代码
自动更新程序的设计框架
使Firefox对XML的处理兼容IE的节点处理方法
WML学习之四 锚和任务
WML学习之五 显示表单
WML学习之六 事件

用JavaScript生成XML


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 79 ::
收藏到网摘: n/a

文中尽量用上所有的操作和属性,以作总结:
<script language="javascript">
<!--
var doc = new ActiveXObject("Msxml2.DOMDocument"); //ie5.5+,CreateObject("Microsoft.XMLDOM")
//加载文档
//doc.load("b.xml");
//创建文件头
var p = doc.createProcessingInstruction
("xml","version=’’1.0’’
encoding=’’gb2312’’");
    //添加文件头
    doc.appendChild(p);
//用于直接加载时获得根接点
//var root = doc.documentElement;
//两种方式创建根接点
//    var root =
doc.createElement("students");
    var root = doc.createNode(1,"students","");
    //创建子接点
    var n = doc.createNode(1,"ttyp","");
        //指定子接点文本
        //n.text = " this is a test";
    //创建孙接点
    var o = doc.createElement("sex");
        o.text = "男";   
  //指定其文本
    //创建属性
    var r = doc.createAttribute("id");
        r.value="test";
        //添加属性
        n.setAttributeNode(r);
    //创建第二个属性  
    var r1 = doc.createAttribute("class");
        r1.value="tt";  
        //添加属性
        n.setAttributeNode(r1);
        //删除第二个属性
        n.removeAttribute("class");
        //添加孙接点
        n.appendChild(o);
        //添加文本接点
        n.appendChild(doc.createTextNode
  ("this is a text node."));
        //添加注释
        n.appendChild(doc.createComment
  ("this is a comment\n")); 
        //添加子接点
        root.appendChild(n); 
    //复制接点
    var m = n.cloneNode(true);
        root.appendChild(m); 
        //删除接点
        root.removeChild(root.childNodes(0));
    //创建数据段
    var c = doc.createCDATASection
 ("this is a cdata");
        c.text = "hi,cdata";
        //添加数据段
        root.appendChild(c); 
    //添加根接点
    doc.appendChild(root);
    //查找接点
    var a = doc.getElementsByTagName("ttyp");
    //var a = doc.selectNodes("//ttyp");
    //显示改接点的属性
    for(var i= 0;i<a.length;i++)
    {
        alert(a[i].xml);
for(var j=0;j<a[i].attributes.length;j++)
        {
            alert(a[i].attributes[j].name);
        }
    }
    //XML保存(需要在服务端,客户端用FSO)
    //doc.save(); 
    //查看根接点XML
    if(n)
    {
        alert(n.ownerDocument.xml);
    }
//-->
</script>