-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathXML DOM Advanced
More file actions
137 lines (76 loc) · 3.59 KB
/
XML DOM Advanced
File metadata and controls
137 lines (76 loc) · 3.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
------------------------------------------------------------------------
The XML DOM - Advanced
In an earlier chapter of this tutorial <xml_dom.asp> we introduced the
XML DOM, and we used the getElementsByTagName() method to retrieve data
from an XML document.
In this chapter we will explain some other important XML DOM methods.
You can learn more about the XML DOM in our XML DOM tutorial
</dom/default.asp>.
------------------------------------------------------------------------
Get the Value of an Element
The XML file used in the examples below: books.xml.
The following example retrieves the text value of the first <title> element:
Example
txt=xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
Try it yourself » <tryit.asp?filename=tryxml_dom_getelement>
------------------------------------------------------------------------
Get the Value of an Attribute
The following example retrieves the text value of the "lang" attribute
of the first <title> element:
Example
txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");
Try it yourself » <tryit.asp?filename=tryxml_dom_getattribute>
------------------------------------------------------------------------
Change the Value of an Element
The following example changes the text value of the first <title> element:
Example
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Easy Cooking";
Try it yourself » <tryit.asp?filename=tryxml_dom_changeelement>
------------------------------------------------------------------------
Create a New Attribute
The XML DOM setAttribute() method can be used to change the value of an
existing attribute, or to create a new attribute.
The following example adds a new attribute (edition="first") to each
<book> element:
Example
x=xmlDoc.getElementsByTagName("book");
for(i=0;i<x.length;i++)
{
x[i].setAttribute("edition","first");
}
Try it yourself » <tryit.asp?filename=tryxml_dom_addattribute>
------------------------------------------------------------------------
Create an Element
The XML DOM createElement() method creates a new element node.
The XML DOM createTextNode() method creates a new text node.
The XML DOM appendChild() method adds a child node to a node (after the
last child).
To create a new element with text content, it is necessary to both
create a new element node and a new text node, and then append it to an
existing node.
The following example creates a new element (<edition>), with the
following text: First, and adds it to the first <book> element:
Example
newel=xmlDoc.createElement("edition");
newtext=xmlDoc.createTextNode("First");
newel.appendChild(newtext);
x=xmlDoc.getElementsByTagName("book");
x[0].appendChild(newel);
Try it yourself » <tryit.asp?filename=tryxml_dom_createelement>
Example explained:
* Create an <edition> element
* Create a text node with the following text: First
* Append the text node to the new <edition> element
* Append the <edition> element to the first <book> element
------------------------------------------------------------------------
Remove an Element
The following example removes the first node in the first <book> element:
Example
x=xmlDoc.getElementsByTagName("book")[0];
x.removeChild(x.childNodes[0]);
Try it yourself » <tryit.asp?filename=tryxml_dom_removeelement>
*Note:* The result of the example above may be different depending on
what browser you use. Firefox treats new lines as empty text nodes,
Internet Explorer does not. You can read more about this and how to
avoid it in our XML DOM tutorial </dom/default.asp>.