XML DOM previousSibling Property
Complete Element Object Reference
Definition and Usage
The previousSibling property returns the previous sibling node (the
previous node
in the same tree level) of the selected
element
If there is no such node, this property returns null.
Syntax
| elementNode.previousSibling |
Tips and Notes
Note: Firefox, and most other browsers, will treat empty white-spaces
or new lines as text nodes, Internet Explorer will not. So, in the example
below, we have a function that checks the node type of the previous sibling node.
Element nodes has a nodeType of 1, so if the previous sibling node is not an element
node, it moves to the previous node, and checks if this node is an element node.
This continues until the previous sibling node (which must be an element
node) is found. This way, the result will be correct in all browsers.
Tip: To read more about the differences between browsers, visit our
DOM Browsers chapter in our XML DOM
Tutorial.
Example
The following code fragment loads "books.xml"
into xmlDoc using
loadXMLDoc() and gets the previous sibling node from the first <author>
element:
Example
//check if the previous sibling node is an element node
function get_previoussibling(n)
{
x=n.previousSibling;
while (x.nodeType!=1)
{
x=x.previousSibling;
}
return x;
}
xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("author")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.childNodes[0].nodeValue);
y=get_previoussibling(x);
document.write("<br />Previous sibling: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);
|
The output of the code above will be:
author = Giada De Laurentiis
Previous sibling: title = Everyday Italian
|
Try it yourself »
|
Try-It-Yourself Demos
nextSibling - Get the next sibling of a node
Complete Element Object Reference

Need an easy way to get data into XML, or transform XML to another format?
MapForce lets you map XML data to/from any combination of XML, database, flat file, Excel 2007, XBRL, or Web services data.
Then it transforms data instantly or auto-generates royalty-free data integration code for recurrent conversions.
New features in Version 2010!
Download a free, fully functional 30-day trial to experience the following features:
- Easy-to-use, graphical data mapping interface
- Instant data transformation
- XSLT 1.0/2.0 and XQuery code generation
- Java, C#, and C++ code generation
- Advanced data processing functions
- Support for all major relational databases including SQL Server, IBM DB2, Oracle, and more
- Visual Studio & Eclipse integration
Download a fully-functional trial today!
|
|
|
|