javascript操作xml文件综合实例

3var doc = new ActiveXObject("Msxml2.DOMDocument"); //ie5.5+,CreateObject("Microsoft.XMLDOM")
4
5
6//加载文档
7//doc.load("b.xml");
8
9//创建文件头
10var p = doc.createProcessingInstruction("xml","version='1.0' encoding='gb2312'");
11
12 //添加文件头
13 doc.appendChild(p);
14
15//用于直接加载时获得根接点
16//var root = doc.documentElement;
17
18//两种方式创建根接点
19// var root = doc.createElement("students");
20 var root = doc.createNode(1,"students","");
21
22 //创建子接点
23 var n = doc.createNode(1,"ttyp","");
24
25 //指定子接点文本
26 //n.text = " this is a test";
27
28 //创建孙接点
29 var o = doc.createElement("sex");
30 o.text = ""; //指定其文本
31
32 //创建属性
33 var r = doc.createAttribute("id");
34 r.value="test";
35
36 //添加属性
37 n.setAttributeNode(r);
38
39 //创建第二个属性
40 var r1 = doc.createAttribute("class");
41 r1.value="tt";
42
43 //添加属性
44 n.setAttributeNode(r1);
45
46 //删除第二个属性
47 n.removeAttribute("class");
48
49 //添加孙接点
50 n.appendChild(o);
51
52 //添加文本接点
53 n.appendChild(doc.createTextNode("this is a text node."));
54
55 //添加注释
56 n.appendChild(doc.createComment("this is a comment/n"));
57
58 //添加子接点
59 root.appendChild(n);
60
61 //复制接点
62 var m = n.cloneNode(true);
63
64 root.appendChild(m);
65
66 //删除接点
67 root.removeChild(root.childNodes(0));
68
69 //创建数据段
70 var c = doc.createCDATASection("this is a cdata");
71 c.text = "hi,cdata";
72 //添加数据段
73 root.appendChild(c);
74
75 //添加根接点
76 doc.appendChild(root);
77
78 //查找接点
79 var a = doc.getElementsByTagName("ttyp");
80 //var a = doc.selectNodes("//ttyp");
81
82 //显示改接点的属性
83 for(var i= 0;i<a.length;i++)
84 {
85 alert(a[i].xml);
86 for(var j=0;j<a[i].attributes.length;j++)
87 {
88 alert(a[i].attributes[j].name);
89 }

90 }

91
92 //修改节点,利用XPATH定位节点
93 var b = doc.selectSingleNode("//ttyp/sex");
94 b.text = "";
95
96 //alert(doc.xml);
97
98 //XML保存(需要在服务端,客户端用FSO)
99 //doc.save();
100
101 //查看根接点XML
102 if(n)
103 {
104 alert(n.ownerDocument.xml);
105 }

106
107//-->
108</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值