模块 java.xml

接口 NamedNodeMap


public interface NamedNodeMap
实现 NamedNodeMap 接口的对象用于表示可以通过名称访问的节点集合。请注意,NamedNodeMap 不继承自 NodeListNamedNodeMaps 不按任何特定顺序维护。实现 NamedNodeMap 的对象中包含的对象也可以通过序号索引访问,但这只是为了方便枚举 NamedNodeMap 的内容,并不意味着 DOM 指定了这些节点的顺序。

NamedNodeMap DOM 中的对象是活动的。

另见 文档对象模型 (DOM) 级别 3 核心规范

  • 方法详情

    • getNamedItem

      Node  getNamedItem(String  name)
      检索由名称指定的节点。
      参数:
      name - 要检索的节点的 nodeName
      返回:
      具有指定 nodeNamenullNode(任何类型),如果它未标识此map中的任何节点。
    • setNamedItem

      Node  setNamedItem(Node  arg) throws DOMException
      使用其 nodeName 属性添加节点。如果具有该名称的节点已存在于此map中,则将其替换为新节点。单独更换节点没有任何效果。
      由于 nodeName 属性用于派生节点必须存储在其下的名称,因此不能存储某些类型的多个节点(具有“特殊”字符串值的节点),因为名称会发生冲突。这被认为比允许节点别名更可取。
      参数:
      arg - 要存储在此map中的节点。稍后可以使用其 nodeName 属性的值访问该节点。
      返回:
      如果新的 Node 替换现有节点,则返回替换的 Node,否则返回 null
      抛出:
      DOMException - WRONG_DOCUMENT_ERR:如果 arg 是从与创建此map的文档不同的文档创建的,则引发。
      NO_MODIFICATION_ALLOWED_ERR:如果此map是只读的,则引发。
      INUSE_ATTRIBUTE_ERR:如果 arg 是一个已经是另一个 Element 对象的属性的 Attr 则引发。 DOM 用户必须显式克隆 Attr 节点才能在其他元素中重新使用它们。
      HIERARCHY_REQUEST_ERR:如果尝试添加不属于此 NamedNodeMap 的节点,则引发。示例包括尝试将 Attr 节点以外的其他内容插入到元素的属性map中,或将非实体节点插入到文档类型的实体map中。
    • removeNamedItem

      Node  removeNamedItem(String  name) throws DOMException
      删除由名称指定的节点。当此map包含附加到元素的属性时,如果已知删除的属性具有默认值,则会立即出现一个属性,其中包含默认值以及相应的命名空间 URI、本地名称和前缀(如果适用)。
      参数:
      name - 要删除的节点的 nodeName
      返回:
      如果存在具有此类名称的节点,则从该map中删除的节点。
      抛出:
      DOMException - NOT_FOUND_ERR:如果此map中没有名为 name 的节点,则引发。
      NO_MODIFICATION_ALLOWED_ERR:如果此map是只读的,则引发。
    • item

      Node  item(int index)
      返回map中的第 index 个项目。如果 index 大于或等于此map中的节点数,则返回 null
      参数:
      index - 这张map的索引。
      返回:
      map中第 index 个位置的节点,如果不是有效索引,则为 null
    • getLength

      int getLength()
      此map中的节点数。有效子节点索引的范围是 0length-1(含)。
    • getNamedItemNS

      Node  getNamedItemNS(String  namespaceURI, String  localName) throws DOMException
      检索由本地名称和命名空间 URI 指定的节点。
      根据 [XML 命名空间 ] ,如果应用程序希望没有命名空间,则它们必须使用值 null 作为方法的 namespaceURI 参数。
      参数:
      namespaceURI - 要检索的节点的命名空间 URI。
      localName - 要检索的节点的本地名称。
      返回:
      具有指定本地名称和名称空间 URI 的 Node(任何类型),或者 null 如果它们未标识此map中的任何节点。
      抛出:
      DOMException - NOT_SUPPORTED_ERR:如果实现不支持功能“XML”并且通过文档公开的语言不支持 XML 命名空间(例如 [HTML 4.01]),则可能会引发。
      自从:
      1.4、DOM Level 2
    • setNamedItemNS

      Node  setNamedItemNS(Node  arg) throws DOMException
      使用其 namespaceURIlocalName 添加节点。如果具有该名称空间 URI 和该本地名称的节点已存在于此map中,则它将被新节点替换。单独更换节点没有任何效果。
      根据 [XML 命名空间 ] ,如果应用程序希望没有命名空间,则它们必须使用值 null 作为方法的 namespaceURI 参数。
      参数:
      arg - 要存储在此map中的节点。稍后可以使用其 namespaceURIlocalName 属性的值访问该节点。
      返回:
      如果新的 Node 替换现有节点,则返回替换的 Node,否则返回 null
      抛出:
      DOMException - WRONG_DOCUMENT_ERR:如果 arg 是从与创建此map的文档不同的文档创建的,则引发。
      NO_MODIFICATION_ALLOWED_ERR:如果此map是只读的,则引发。
      INUSE_ATTRIBUTE_ERR:如果 arg 是一个已经是另一个 Element 对象的属性的 Attr 则引发。 DOM 用户必须显式克隆 Attr 节点才能在其他元素中重新使用它们。
      HIERARCHY_REQUEST_ERR:如果尝试添加不属于此 NamedNodeMap 的节点,则引发。示例包括尝试将 Attr 节点以外的其他内容插入到元素的属性map中,或将非实体节点插入到文档类型的实体map中。
      NOT_SUPPORTED_ERR:如果实现不支持功能“XML”并且通过文档公开的语言不支持 XML 命名空间(例如 [HTML 4.01]),则可能会引发。
      自从:
      1.4、DOM Level 2
    • removeNamedItemNS

      Node  removeNamedItemNS(String  namespaceURI, String  localName) throws DOMException
      删除由本地名称和命名空间 URI 指定的节点。当此map包含附加到元素的属性时,可以知道已删除的属性具有默认值,如 Node 接口的 attributes 属性所返回的那样。如果是这样,一个属性会立即出现,其中包含默认值以及相应的命名空间 URI、本地名称和前缀(如果适用)。
      根据 [XML 命名空间 ] ,如果应用程序希望没有命名空间,则它们必须使用值 null 作为方法的 namespaceURI 参数。
      参数:
      namespaceURI - 要删除的节点的名称空间 URI。
      localName - 要删除的节点的本地名称。
      返回:
      如果存在具有此类本地名称和命名空间 URI 的节点,则从该map中移除的节点。
      抛出:
      DOMException - NOT_FOUND_ERR:如果此map中没有具有指定 namespaceURIlocalName 的节点,则引发。
      NO_MODIFICATION_ALLOWED_ERR:如果此map是只读的,则引发。
      NOT_SUPPORTED_ERR:如果实现不支持功能“XML”并且通过文档公开的语言不支持 XML 命名空间(例如 [HTML 4.01]),则可能会引发。
      自从:
      1.4、DOM Level 2