DOM - Node Object Method - normalize
The method normalize adds all text nodes including attribute nodes which defines a normal form where structure of the nodes which contains elements, comments, processing instructions, CDATA sections, and entity references separates the text nodes i.e. neither adjacent Text nodes nor empty Text nodes.
Syntax
Following is the syntax for the usage of the normalize method.
nodeobject.normalize();
This method has no parameters and no return value.
Example
node.xml contents are as below −
<?xml version = "1.0"?>
<Company>
<Employee category = "Technical">
<FirstName>Tanmay</FirstName>
<LastName>Patil</LastName>
<ContactNo>1234567890</ContactNo>
<Email>tanmaypatil@xyz.com</Email>
</Employee>
<Employee category = "Non-Technical">
<FirstName>Taniya</FirstName>
<LastName>Mishra</LastName>
<ContactNo>1234667898</ContactNo>
<Email>taniyamishra@xyz.com</Email>
</Employee>
<Employee category = "Management">
<FirstName>Tanisha</FirstName>
<LastName>Sharma</LastName>
<ContactNo>1234562350</ContactNo>
<Email>tanishasharma@xyz.com</Email>
</Employee>
</Company>
Following example demonstrates the usage of the normalize method −
<!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc(filename) {
if (window.XMLHttpRequest) {
xhttp = new XMLHttpRequest();
} else // code for IE5 and IE6 {
xhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",filename,false);
xhttp.send();
return xhttp.responseXML;
}
</script>
</head>
<body>
<script>
xmlDoc = loadXMLDoc("/dom/node.xml");
x = xmlDoc.createElement('Employee');
x.appendChild( document.createTextNode("EmployeeA ") );
x.appendChild( document.createTextNode("EmployeeB ") );
document.write("<b>Before normalize</b><br>");
document.write("<b>Child node length: </b>"+x.childNodes.length+"<br>");
document.write("<b>First child node: </b>"+x.childNodes[0].textContent+"<br>");
document.write("<b>Second child node: </b>"+x.childNodes[1].textContent+"<br>");
x.normalize();
document.write("<b>After normalize</b><br>");
document.write("<b>Child node length: </b>"+x.childNodes.length+"<br>");
document.write("<b>First child node: </b>"+x.childNodes[0].textContent+"<br>");
</script>
</body>
</html>
Execution
Save this file as nodemethod_normalise.htm on the server path (this file and node.xml should be on the same path in your server). We will get the output as shown below −
Before normalize Child node length: 2 First child node: EmployeeA Second child node: EmployeeB After normalize Child node length: 1 First child node: EmployeeA EmployeeB
dom_node_object.htm
Advertisements