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("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
//查看根接点XML102
if(n)103
{104
alert(n.ownerDocument.xml);105
}106

107
//-->108
</script>