DOM NamedNodeMap物件setNamedItemNS()方法

2019-10-16 23:19:46

DOM NamedNodeMap物件setNamedItemNS()方法使用nodeName屬性新增節點。 如果此對映中已存在具有該名稱的節點,則該節點將替換為新對映。

語法

以下是使用setNamedItemNS()方法的語法。

nodemapObject.setNamedItemNS(arg)

引數

  • arg - 這將節點儲存在對映中,之後可以使用namespaceURIlocalName屬性的值存取此節點,它是型別節點。

返回值

  • 此方法替換舊節點並返回新節點值。

範例

檔案:node_ns.xml 的內容如下 -

<?xml version = "1.0"?>
<Company>
   <Employee  xmlns:e = "https://www.tw511.com/technical/" category = "technical">
      <e:FirstName e:language = "English">Tianya</e:FirstName>
      <e:LastName>Lee</e:LastName>
      <e:ContactNo>1234567890</e:ContactNo>
      <e:Email>[email protected]</e:Email>
   </Employee>

   <Employee xmlns:n = "https://www.tw511.com/non-technical/" category = "non-technical">
      <n:FirstName>Maxsu</n:FirstName>
      <n:LastName>Su</n:LastName>
      <n:ContactNo>1234667898</n:ContactNo>
      <n:Email>[email protected]</n:Email>
   </Employee>
</Company>

以下範例演示了setNamedItemNS()方法的用法 -

<!DOCTYPE html>
<html>
   <meta charset="utf-8"/>
    <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("/node_ns.xml");

         c = xmlDoc.createAttributeNS("https://www.tw511.com/technical/",'language');
         c.value = "CEO";
         y = xmlDoc.getElementsByTagName('e:FirstName')[0].attributes;
         y.setNamedItemNS(c);
         document.write("設定名為Item NS的值為 : ")
         document.write(y.getNamedItemNS("https://www.tw511.com/technical/",'language').nodeValue);
      </script>
   </body>
</html>

執行上面範例程式碼,得到以下結果 -