XML DOM setAttributeNS() 方法

定义和用法

setAttributeNS() 方法创建或改变具有命名空间的属性。

语法:

  1. elementNode.setAttributeNS(name,value)
参数 描述
ns 必需。规定要设置的属性的命名空间 URI。
name 必需。规定要设置的属性的名称。
value 必需。规定要设置的属性的值。

说明

该方法与 setAttribute() 方法类似,只是要创建或设置的属性由命名空间 URI 和限定名(由名字空间前缀、冒号和名字空间中的本地名构成)共同指定。除了可以改变一个属性的值以外,使用该方法还可以改变属性的名字空间前缀。

只有使用名字空间的 XML 文档才会使用该方法。不支持 XML 文档的浏览器可能不会实现该方法。

实例

在所有的例子中,我们将使用 XML 文件 books_ns.xml,以及 JavaScript 函数 loadXMLDoc()

例子 1

下面的代码向 "books_ns.xml" 中的第一个 <book> 元素添加一个 "edition" 属性:

  1. xmlDoc=loadXMLDoc("books_ns.xml");
  2.  
  3. x=xmlDoc.getElementsByTagName("book")[0];
  4. ns="http://www.yousite.com/edition/";
  5.  
  6. x.setAttributeNS(ns,"edition","first");
  7.  
  8. document.write(x.getAttributeNS(ns,"edition"));

输出:

  1. first

例子 2

下面的代码更改了 "books_ns.xml" 中第一个 <title> 元素的 "lang" 属性的值:

  1. xmlDoc=loadXMLDoc("books_ns.xml");
  2.  
  3. x=xmlDoc.getElementsByTagName("title")[0];
  4. ns="http://www.yousite.com/children/";
  5.  
  6. x.setAttributeNS(ns,"c:lang","italian");
  7.  
  8. document.write(x.getAttributeNS(ns,"lang"));

输出:

  1. italian