Метод XML DOM removeChild()

Руководство по объекту Node

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

Метод removeChild() может удалить узел из списка подузлов.

Если удаление успешное, этот метод может вернуть удаленный узел, если失败, то возвращает NULL.

Синтаксис:

nodeObject.removeChild(node)
Параметры Описание
node Обязателен. Указывает узел, который нужно удалить.

Подсказки и комментарии

Комментарий:Internet Explorer будет игнорировать пустые текстовые узлы, образованные между узлами (например, символы перевода строки), в то время как Mozilla этого не делает. Поэтому в следующем примере мы будем использовать функцию для проверки типа узла последнего подузла.

Тип узла узла элемента равен 1, поэтому если первый подузел не является узлом элемента, он будет перемещен к следующему узлу, и затем продолжится проверка, является ли этот узел узлом элемента. Этот процесс будет продолжаться до тех пор, пока не будет найден первый элемент подузел. Таким образом, мы можем получить правильный метод в Internet Explorer и Mozilla.

Подсказка:Для получения更多信息 о различиях между XML DOM в IE и Mozilla, пожалуйста, посетите наш DOM браузер Разделы.

Пример

Во всех примерах мы будем использовать XML-файл books.xmlи JavaScript-функции loadXMLDoc().

Следующий фрагмент кода позволяет удалить последний подузел из первого <book>:

//Проверка, является ли последний подузел элементом
function get_lastchild(n)
{
var x=n.lastChild;
while (x.nodeType!=1)
  {
  x=x.previousSibling;
  }
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("book")[0];
deleted_node=x.removeChild(get_lastchild(x));
document.write("Удален узел: " + deleted_node.nodeName);

Вывод:

Удален узел: цена

Руководство по объекту Node