DOM - NamedNodeMap Object Method - setNamedItem



The method setNamedItem() adds a node using its nodeName attribute. If a node with that name is already present in this map, it is replaced by the new one.

Syntax

Following is the syntax for the usage of the setNamedItem() method.

nodemapObject.setNamedItem(arg)

S.No. Parameter & Description
1

arg

This store the node in the map. This node value can be accessed later using the nodeName attribute. It is of type node.

This method returns the new updated value of the node if the existing node is replaced, otherwise null is returned.

Example

node.xml contents are as below −

<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 setNamedItem() 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");

         c = xmlDoc.createAttribute("category");
         c.value = "TutorialsPoint";
         y = xmlDoc.getElementsByTagName('Employee')[0].attributes;
         y.setNamedItem(c);
         document.write("Set named Item value is : ")
         document.write(y.getNamedItem('category').nodeValue);

      </script>
    </body>
</html>

Execution

Save this file as namednodemapmethod_setnameditem.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 −

Set named Item value is : TutorialsPoint
dom_namednodemap_object.htm
Advertisements