Метод XML DOM removeChild()
Определение и использование
Метод 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);
Вывод:
Удален узел: цена