Sdílet prostřednictvím


Odebrání atributů z uzlu elementu v modelu DOM

Existuje mnoho způsobů, jak odebrat atributy. Jednou z technik je jejich odebrání z kolekce atributů. Provedete to takto:

  1. Získejte kolekci atributů z elementu pomocí XmlAttributeCollection attrs = elem.Attributes;.

  2. Odeberte atribut z kolekce atributů pomocí jedné ze tří metod:

    • Slouží Remove k odebrání konkrétního atributu.

    • Slouží RemoveAll k odebrání všech atributů z kolekce a ponechání elementu bez atributů.

    • Slouží RemoveAt k odebrání atributu z kolekce atributů pomocí jeho čísla indexu.

Následující metody odeberou atributy z uzlu elementu.

Další alternativou je získat prvek, získat atribut z kolekce atributů a odebrat uzel atributu přímo. Pokud chcete získat atribut z kolekce atributů, můžete použít název, XmlAttribute attr = attrs["attr_name"];index XmlAttribute attr = attrs[0];nebo plně kvalifikovaný název s oborem názvů XmlAttribute attr = attrs["attr_localName", "attr_namespace"].

Bez ohledu na metodu použitou k odebrání atributů existují zvláštní omezení pro odebrání atributů, které jsou definovány jako výchozí atributy v definici typu dokumentu (DTD). Výchozí atributy nelze odebrat, pokud není odebrán prvek, ke kterým patří. Výchozí atributy jsou vždy k dispozici pro elementy, které mají deklarované výchozí atributy. Odebrání výchozího atributu XmlAttributeCollection z nebo z XmlElement výsledků nahrazení atributu vloženého do XmlAttributeCollection elementu inicializovaného na výchozí hodnotu, která byla deklarována. Pokud máte prvek definovaný jako <book att1="1" att2="2" att3="3"></book>, pak máte book prvek se třemi výchozími atributy deklarované. Implementace modelu DOM (Document Object Model) XML zaručuje, že pokud tento book prvek existuje, má tyto tři výchozí atributy att1, att2a att3.

Při zavolání pomocí XmlAttributemetody RemoveAll nastaví hodnotu atributu String.Empty, protože atribut nemůže existovat bez hodnoty.

Viz také