XML DOM - Đối tượng phần tử
Đối tượng phần tử
Đối tượng Element đại diện cho một phần tử trong tài liệu XML. Các phần tử có thể chứa các thuộc tính, các phần tử khác hoặc văn bản. Nếu một phần tử chứa văn bản, văn bản đó sẽ được biểu diễn trong nút văn bản.
QUAN TRỌNG! Văn bản luôn được lưu trữ trong các nút văn bản. Một lỗi phổ biến trong quá trình xử lý DOM là điều hướng đến một nút phần tử và mong đợi nó chứa văn bản. Tuy nhiên, ngay cả nút phần tử đơn giản nhất cũng có nút văn bản bên dưới nó. Ví dụ: trong <year>2005</year>, có một nút phần tử (năm) và một nút văn bản bên dưới nó chứa văn bản (2005).
Vì đối tượng Element cũng là một Node nên nó kế thừa các thuộc tính và phương thức của đối tượng Node.
Thuộc tính đối tượng phần tử
Property | Description |
---|---|
attributes | Returns a NamedNodeMap of attributes for the element |
baseURI | Returns the absolute base URI of the element |
childNodes | Returns a NodeList of child nodes for the element |
firstChild | Returns the first child of the element |
lastChild | Returns the last child of the element |
localName | Returns the local part of the name of the element |
namespaceURI | Returns the namespace URI of the element |
nextSibling | Returns the node immediately following the element |
nodeName | Returns the name of the node, depending on its type |
nodeType | Returns the type of the node |
ownerDocument | Returns the root element (document object) for an element |
parentNode | Returns the parent node of the element |
prefix | Sets or returns the namespace prefix of the element |
previousSibling | Returns the node immediately before the element |
schemaTypeInfo | Returns the type information associated with the element |
tagName | Returns the name of the element |
textContent | Sets or returns the text content of the element and its descendants |
Phương thức đối tượng phần tử
Method | Description |
---|---|
appendChild() | Adds a new child node to the end of the list of children of the node |
cloneNode() | Clones a node |
compareDocumentPosition() | Compares the document position of two nodes |
getAttribute() | Returns the value of an attribute |
getAttributeNS() | Returns the value of an attribute (with a namespace) |
getAttributeNode() | Returns an attribute node as an Attribute object |
getAttributeNodeNS() | Returns an attribute node (with a namespace) as an Attribute object |
getElementsByTagName() | Returns a NodeList of matching element nodes, and their children |
getElementsByTagNameNS() | Returns a NodeList of matching element nodes (with a namespace), and their children |
getFeature(feature,version) | Returns a DOM object which implements the specialized APIs of the specified feature and version |
getUserData(key) | Returns the object associated to a key on a this node. The object must first have been set to this node by calling setUserData with the same key |
hasAttribute() | Returns whether an element has any attributes matching a specified name |
hasAttributeNS() | Returns whether an element has any attributes matching a specified name and namespace |
hasAttributes() | Returns whether the element has any attributes |
hasChildNodes() | Returns whether the element has any child nodes |
insertBefore() | Inserts a new child node before an existing child node |
isDefaultNamespace(URI) | Returns whether the specified namespaceURI is the default |
isEqualNode() | Checks if two nodes are equal |
lookupNamespaceURI() | Returns the namespace URI matching a specified prefix |
lookupPrefix() | Returns the prefix matching a specified namespace URI |
normalize() | Puts all text nodes underneath this element (including attributes) into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separates Text nodes, i.e., there are neither adjacent Text nodes nor empty Text nodes |
removeAttribute() | Removes a specified attribute |
removeAttributeNS() | Removes a specified attribute (with a namespace) |
removeAttributeNode() | Removes a specified attribute node |
removeChild() | Removes a child node |
replaceChild() | Replaces a child node |
setUserData(key,data,handler) | Associates an object to a key on the element |
setAttribute() | Adds a new attribute |
setAttributeNS() | Adds a new attribute (with a namespace) |
setAttributeNode() | Adds a new attribute node |
setAttributeNodeNS(attrnode) | Adds a new attribute node (with a namespace) |
setIdAttribute(name,isId) | If the isId property of the Attribute object is true, this method declares the specified attribute to be a user-determined ID attribute |
setIdAttributeNS(uri,name,isId) | If the isId property of the Attribute object is true, this method declares the specified attribute (with a namespace) to be a user-determined ID attribute |
setIdAttributeNode(idAttr,isId) | If the isId property of the Attribute object is true, this method declares the specified attribute to be a user-determined ID attribute |