Получение значений атрибутов и атрибутивных узлов элемента по имени (и, возможно, по пространству имен): методы getAttribute(), getAttributeNS(), getAttributeNode() и getAttributeNodeNS()

Рубрика: DOM - Объектная Модель Документа

Доброго времени суток, уважаемые посетители okITgo.ru! В очередном посте рубрики XML DOM мы изучим методы для получения значений атрибутов XML элементов различными способами.

Метод getAttribute()


Справка по Объекту Элемент Все Методы Элемента


Определение и Использование

Метод getAttribute() получает значение атрибута по имени.

Синтаксис

elementNode.getAttribute(name)

Параметр Описание
name Обязательный. Указывает атрибут, значение которого требуется получить


Пример

Следующий фрагмент кода загружает "books.xml" в xmlDoc, используя
loadXMLDoc()
, и получает значение атрибута "category" во всех элементах <book>:


Пример

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName(‘book’);

for (i=0;i<x.length;i++)
{
document.write(x[i].getAttribute(‘category’));
document.write("");
}

Вывод:

КУЛИНАРИЯ
ДЛЯ ДЕТЕЙ
ВЕБ
ВЕБ

Попробуйте сами »


Метод getAttributeNS()


Справка по Объекту Элемент Все Методы Элемента


Определение и Использование

Метод getAttributeNS() получает значение атрибута по URI пространства имен и имени.

Синтаксис

elementNode.getAttributeNS(ns,name)

Параметр Описание
ns Обязательный. Указывает URI пространства имен, откуда требуется получить значение атрибута
name Обязательный. Указывает атрибут, значение которого необходимо получить


Пример

Следующий фрагмент кода загружает "books_ns.xml" в xmlDoc, используя
loadXMLDoc()
, и получает значение атрибута "lang" из первого элемента <title>:


Пример

xmlDoc=loadXMLDoc("books_ns.xml");

x=xmlDoc.getElementsByTagName("title")[0];
ns="http://okitgo.ru/children/";

document.write(x.getAttributeNS(ns,"lang"));

Вывод:

ru

Попробуйте сами »


Метод getAttributeNode()


Справка по Объекту Элемент Все Методы Элемента


Определение и Использование

Метод getAttributeNode() получает атрибутивный узел по имени для текущего элемента.

Синтаксис

elementNode.getAttributeNode(name)

Параметр Описание
name Обязательный. Указывает атрибутивный узел, который надо получить


Пример

Следующий фрагмент кода загружает "books.xml" в xmlDoc, используя
loadXMLDoc()
, и получает атрибут "category" из всех элементов <book>:


Пример

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName(‘book’);

for(i=0;i<x.length;i++)
{
attnode=x.item(i).getAttributeNode("category");
document.write(attnode.name);
document.write(" = ");
document.write(attnode.value);
document.write("");
}

Вывод:

category = КУЛИНАРИЯ
category = ДЛЯ ДЕТЕЙ
category = ВЕБ
category = ВЕБ

Попробуйте сами »


Метод getAttributeNodeNS()


Справка по Объекту Элемент Все Методы Элемента


Определение и Использование

Метод getAttributeNS() получает атрибутивный узел по URI пространства имен и имени.

Синтаксис

elementNode.getAttributeNodeNS(ns,name)

Параметр Описание
ns Обязательный. Указывает URI пространства имен, из которого требуется получить значение атрибута
name Обязательный. Указывает атрибут, который требуется получить


Пример

Следующий фрагмент кода загружает "books_ns.xml" в xmlDoc, используя
loadXMLDoc()
, и получает атрибутивный узел "lang" из первого элемента <title>:


Пример

xmlDoc=loadXMLDoc("books_ns.xml");

x=xmlDoc.getElementsByTagName("title")[0];
ns="http://okitgo.ru.com/children/";

y=x.getAttributeNodeNS(ns,"lang");

document.write(y.nodeName);
document.write(" = ");
document.write(y.nodeValue);

Вывод:

c:lang = ru

Попробуйте сами »


Удачи Вам и до новых встреч на страницах блога okITgo.ru.