模块  java.xml
软件包  org.w3c.dom

Interface NamedNodeMap


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

    DOM中的NamedNodeMap对象是实时的。

    另见Document Object Model (DOM) Level 3 Core Specification

    • 方法详细信息

      • getNamedItem

        Node getNamedItem​(String name)
        检索由name指定的节点。
        参数
        name - 要检索的节点的 nodeName
        结果
        具有指定的 nodeNameNode (任何类型),如果它未标识此映射中的任何节点, null
      • setNamedItem

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

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

        Node item​(int index)
        返回地图中的index项。 如果index大于或等于此映射中的节点数,则返回null
        参数
        index - 索引到此地图。
        结果
        地图中位于 index位置的节点,如果不是有效索引,则为 null
      • getLength

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

        Node getNamedItemNS​(String namespaceURI,
                            String localName)
                     throws DOMException
        检索由本地名称和名称空间URI指定的节点。
        根据[ XML Namespaces ],如果方法希望没有名称空间,则必须使用值null作为方法的namespaceURI参数。
        参数
        namespaceURI - 要检索的节点的名称空间URI。
        localName - 要检索的节点的本地名称。
        结果
        具有指定本地名称和名称空间URI的 Node (任何类型),如果它们未标识此映射中的任何节点, null
        异常
        DOMException - NOT_SUPPORTED_ERR:如果实现不支持“XML”功能并且通过Document公开的语言不支持XML命名空间(例如[ HTML 4.01 ]),则可能 引发此问题
        从以下版本开始:
        1.4,DOM Level 2
      • setNamedItemNS

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

        Node removeNamedItemNS​(String namespaceURI,
                               String localName)
                        throws DOMException
        删除由本地名称和名称空间URI指定的节点。 当此映射包含附加到元素的属性时,已知已删除的属性具有默认值,如Node接口的attributes属性所返回。 如果是,则会立即显示一个属性,其中包含默认值以及相应的名称空间URI,本地名称和前缀(如果适用)。
        Per [ XML Namespaces ],如果方法希望没有名称空间,则应用程序必须使用值null作为方法的namespaceURI参数。
        参数
        namespaceURI - 要删除的节点的名称空间URI。
        localName - 要删除的节点的本地名称。
        结果
        如果存在具有此类本地名称和名称空间URI的节点,则从此映射中删除该节点。
        异常
        DOMException - NOT_FOUND_ERR:如果此映射中没有指定namespaceURIlocalName节点,则localNamelocalName
        NO_MODIFICATION_ALLOWED_ERR:如果此地图是只读的,则引发此异常。
        NOT_SUPPORTED_ERR:如果实现不支持“XML”功能,并且通过Document公开的语言不支持XML命名空间(例如[ HTML 4.01 ]),则可能引发此问题
        从以下版本开始:
        1.4,DOM Level 2