现在的位置: 首页 > 综合 > 正文

用实例说明如何用JavaScript生成XML

2011年02月16日 ⁄ 综合 ⁄ 共 2436字 ⁄ 字号 评论关闭
  1 <script language="javascript"> 
  2 <!-- 
  3 var doc = new ActiveXObject("Msxml2.DOMDocument"); //ie5.5+,CreateObject("Microsoft.XMLDOM")  
  4 
  5 
  6 //加载文档 
  7 //doc.load("b.xml"); 
  8 
  9 //创建文件头 
 10 var p = doc.createProcessingInstruction
 11 ("xml","version=’’1.0’’  
 12 encoding=’’gb2312’’"); 
 13 
 14     //添加文件头 
 15     doc.appendChild(p); 
 16 
 17 //用于直接加载时获得根接点 
 18 //var root = doc.documentElement; 
 19 
 20 //两种方式创建根接点 
 21 //    var root = 
 22 doc.createElement("students"); 
 23     var root = doc.createNode(1,"students",""); 
 24 
 25     //创建子接点 
 26     var n = doc.createNode(1,"ttyp",""); 
 27 
 28         //指定子接点文本 
 29         //n.text = " this is a test"; 
 30      
 31     //创建孙接点 
 32     var o = doc.createElement("sex"); 
 33         o.text = "";    
 34         //指定其文本 
 35 
 36     //创建属性 
 37     var r = doc.createAttribute("id"); 
 38         r.value="test"
 39 
 40         //添加属性 
 41         n.setAttributeNode(r); 
 42 
 43     //创建第二个属性     
 44     var r1 = doc.createAttribute("class"); 
 45         r1.value="tt"
 46          
 47         //添加属性 
 48         n.setAttributeNode(r1); 
 49 
 50         //删除第二个属性 
 51         n.removeAttribute("class"); 
 52 
 53         //添加孙接点 
 54         n.appendChild(o); 
 55 
 56         //添加文本接点 
 57         n.appendChild(doc.createTextNode
 58         ("this is a text node.")); 
 59 
 60         //添加注释 
 61         n.appendChild(doc.createComment
 62         ("this is a comment\n")); 
 63      
 64         //添加子接点 
 65         root.appendChild(n); 
 66      
 67     //复制接点 
 68     var m = n.cloneNode(true); 
 69 
 70         root.appendChild(m); 
 71          
 72         //删除接点 
 73         root.removeChild(root.childNodes(0)); 
 74 
 75     //创建数据段 
 76     var c = doc.createCDATASection
 77     ("this is a cdata"); 
 78         c.text = "hi,cdata"
 79         //添加数据段 
 80         root.appendChild(c); 
 81      
 82     //添加根接点 
 83     doc.appendChild(root); 
 84 
 85     //查找接点 
 86     var a = doc.getElementsByTagName("ttyp"); 
 87     //var a = doc.selectNodes("//ttyp"); 
 88 
 89     //显示改接点的属性 
 90     for(var i= 0;i<a.length;i++
 91     { 
 92         alert(a[i].xml); 
 93 for(var j=0;j<a[i].attributes.length;j++
 94         { 
 95             alert(a[i].attributes[j].name); 
 96         } 
 97     } 
 98 
 99     //XML保存(需要在服务端,客户端用FSO) 
100     //doc.save(); 
101      
102     //查看根接点XML 
103     if(n) 
104     { 
105         alert(n.ownerDocument.xml); 
106     } 
107 
108 //--> 
109 </script>

抱歉!评论已关闭.