Объект Именованная Карта Узлов – свойство length и методы item(), getNamedItem() и др.

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

Приветствую, уважаемые читатели блога okITgo.ru! Сегодня речь пойдет о DOM объекте Именованная Карта Узлов, который представлявляет собой неупорядоченный список узлов и служит для работы с атрибутами XML. Мы рассмотрим свойства и методы карты узлов. Собственно, свойство у данного объекта всего одно – это свойсво length (количество узлов), а вот методов несколько, из которых детально и напримерах будут разобраны методы item(), getNamedItem() и removeNamedItem().


Объект Именованная Карта Узлов

Обращаться к Узлам Именованной Карты можно по имени узла.

Именованная Карта Узлов поддерживает самообновление. Если узел удаляется или добавляется в список узлов или XML документ, список автоматически обновляется.

Замечание: Узлы именованной карты не возвращаются в каком-либо заданном порядке.

Обозначения: IE: Internet Explorer, F: Firefox, O: Opera, W3C: Консорциум Всемирной Паутины (Интернет Стандарт)

Свойства Объекта Именованная Карта Узлов

Свойство Описание IE F O W3C
length Возвращает количество узлов в списке 5 1 9 Да

Методы Объекта Именованная Карта Узлов

Метод Описание IE F O W3C
getNamedItem() Возвращает указанный узел (по имени) 5 1 9 Да
getNamedItemNS() Возвращает указанный узел (по имени и пространству имен)     9 Да
item() Возвращает узел с указанным индексом 5 1 9 Да
removeNamedItem() Удаляет указанный узел (по имени) 6 1 9 Да
removeNamedItemNS() Удаляет указанный узел (по имени и пространству имен)     9 Да
setNamedItem() Устанавливает указанный узел (по имени)     9 Да
setNamedItemNS() Устанавливает указанный узел (по имени и пространству имен)     9 Да


Справка по Объекта Именованная Карта Узлов Объект Именованная Карта Узлов

XML DOM Свойство length

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

Свойство length возвращает количество Узлов Именованной Карты.

Синтаксис

nodemapObject.length


Пример

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

Пример

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName(‘book’);

document.write(x.item(0).attributes.length);

Вывод кода выше будет:

1

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


Примеры – Попробуйте Сами

length – Вернуть количество узлов в списке узлов

length – Обход узлов списка в цикле


Справка по Объекту Именованная Карта Узлов Объект Именованная Карта Узлов

XML DOM Метод getNamedItem()

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

Метод getNamedItem() возвращает указанный узел.

Синтаксис

getNamedItem(nodename)

Параметр Описание
nodename Имя узла, который требуется получить


Пример

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

Пример

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName(‘book’);

for(i=0;i<x.length;i++)
  {
  att=x.item(i).attributes.getNamedItem("category");
  document.write(att.value + "");
  }

Вывод кода выше будет:

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

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


Примеры – Поробуйте Сами

getNamedItem() – Изменить значение узла


Справка по Объекту Именованная Карта Узлов Объект Именованная Карта Узлов

XML DOM Метод item()

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

Метод item() возвращает узел с указанным индексом в списке узлов.

Синтаксис

item(index)

Параметр Описание
index Индекс


Пример

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

Пример

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName(‘book’);

for(i=0;i<x.length;i++)
{
att=x.item(i).attributes.getNamedItem("category");
document.write(att.value + "");
}

The output of the code above will be:

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

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


Примеры – Попробуйте Сами

item() – Обойти в цикле все узлы списка

getNamedItem() – Изменить значение узла


Справка по Объекту Именованная Карта Узлов Объект Именованная Карта Узлов

XML DOM Метод removeNamedItem()

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

Метод removeNamedItem() удаляет указанный узел.

Если удаляемый атрибут имеет значение по умолчанию, новый атрибут тут же получает значение по умолчанию, так же как и URI пространства имен, локальное имя и префикс, если они присутствуют.

Этот метод возвращает удаленный узел.

Синтаксис

removeNamedItem(nodename)

Параметр Описание
nodename Имя узла, который необходимо удалить


Пример

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

Пример

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName(‘book’);

for(i=0;i<x.length;i++)
{
x.item(i).attributes.removeNamedItem("category");
}

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


Справка по Объекту Именованная Карта Узлов Объект Именованная Карта Узлов

В следующей статье рубрики DOM я планирую рассказать о еще одном объекте – Документ DOM. Спасибо за внимание и до скорых встреч на страницах сайта okITgo.ru.